正则表达式

正则表达式在线验证:https://regex101.com

正则表达式=普通字符+特殊字符

特殊字符:

        .:匹配除了换行符之外的任意单个字符

        *:匹配前面的子表达式任意次(包括0次)

        +:匹配前面的子表达式一次或多次

        \:转义特殊字符

        \d{m,n}:匹配数字m~n次,等同于[0-9]{m~n}

        \D:匹配非数字字符,等同于[^0-9]

        ?:尽可能少的匹配,取前面的表达式一次或零次,在*、+后面加上?实现非贪婪匹配

        \s:匹配任意一个空白字符(空格、tab、换行符)

        \S:匹配任意一个不是空白符的字符

        \w:匹配任意一个文字字符(字母、数字、下划线)

        \W:匹配任意一个非文字字符(标点符号、空格)

        []:匹配几个字符任意之一

        ^:表示文本开头位置,也表示非

        $:表示文本结束位置

        ():分组匹配

例子1:

        内容:薪资是10-16k*16薪,北京东城区

        表达式:\d+-\d+k[\*\d薪]*

        结果:10-16k*16薪

分组匹配例子:

import re
content = """
16788888888我的手机号码1111
12566666666我的手机号码1111
13577777777我的手机号码1111
"""

re = re.compile("(\d+)我的手机号码(\d+)")
def get_value():
    for one in re.findall(content):
        print(one)

if __name__ == '__main__':
    get_value()

结果:

('16788888888', '1111')
('12566666666', '1111')
('13577777777', '1111')

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值