Python正则表达式-匹配字符

正则表达式中的特殊字符

正则表达式的使用


In [1]: import re

In [2]: data = 'hello insane you are 26 years old'

In [3]: print(re.findall('\d', data))
['2', '6']

In [4]: print(re.findall('\s', data))
[' ', ' ', ' ', ' ', ' ', ' ']

In [5]: data = 'i am insane'

In [6]: print(re.findall('\w', data))
['i', 'a', 'm', 'i', 'n', 's', 'a', 'n', 'e']

In [7]: data = 'i am insane, i am 26'

In [8]: print(re.findall('\w', data))
['i', 'a', 'm', 'i', 'n', 's', 'a', 'n', 'e', 'i', 'a', 'm', '2', '6']

In [9]: data = 'hello insane you are 26 years old'

In [10]: print(re.findall('\Ahello', data))
['hello']

In [11]: print(re.findall('\Ahellos', data))
[]

In [12]: print(re.findall('old\Z', data))
['old']

In [13]: print(re.findall('aold\Z', data))
[]

In [14]: print(re.findall('.', data))
['h', 'e', 'l', 'l', 'o', ' ', 'i', 'n', 's', 'a', 'n', 'e', ' ', 'y', 'o', 'u', ' ', 'a', 'r', 'e', ' ', '2', '6', ' ', 'y', 'e', 'a', 'r', 's', ' ', 'o', 'l', 'd']

实战

#!/usr/bin/python3
# -*- coding: utf-8 -*-
# @Time     : 2021/8/28 19:52
# @Author   : InsaneLoafer
# @File     : re_test1.py

import re


def had_number(data):
    result = re.findall('\d', data)
    print(result)
    for i in result:
        return True
    return False

def remove_number(data):
    result = re.findall('\D', data)
    print(result)
    return ''.join(result)

def startswith(sub, data):
    _sub = '\A%s' % sub
    result = re.findall(_sub, data)
    for i in result:
        return True
    return False

def endswith(sub, data):
    _sub = '%s\Z' % sub
    result = re.findall(_sub, data)
    if len(result) != 0:
        return True
    else:
        return False

def real_len(data):
    """
    去掉字符串空格,判断真实长度
    :param data:
    :return:
    """
    result = re.findall('\S', data)
    print(result)
    return len(result)


if __name__ == '__main__':
    data = 'i am insane, i am 26'
    result = had_number(data)
    print(result)

    result = remove_number(data)
    print(result)

    data = 'hello insane, i am loafer. i am 26 year\'s old'
    print(re.findall('\W', data))

    result = startswith('hello', data)
    print(result)

    result = endswith('old', data)
    print(result)

    print(len(data))
    result = real_len(data)
    print(result)
['2', '6']
True
['i', ' ', 'a', 'm', ' ', 'i', 'n', 's', 'a', 'n', 'e', ',', ' ', 'i', ' ', 'a', 'm', ' ']
i am insane, i am 
[' ', ',', ' ', ' ', ' ', '.', ' ', ' ', ' ', ' ', "'", ' ']
True
True
45
['h', 'e', 'l', 'l', 'o', 'i', 'n', 's', 'a', 'n', 'e', ',', 'i', 'a', 'm', 'l', 'o', 'a', 'f', 'e', 'r', '.', 'i', 'a', 'm', '2', '6', 'y', 'e', 'a', 'r', "'", 's', 'o', 'l', 'd']
36

Process finished with exit code 0
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容