日报5.14

正则表达式0514

匹配单个字符

【】

写法

[abc]

符号中不要有逗号

如果要表达一个范围通过 -

练习

str_list = ["name", "_age", "#348z$s"]

# 需求:
# 找到str_list中不符合标识符命名规范的,并打印出来
for str_ in str_list:
    for char_ in str_:
        p = "[a-zA-Z0-9_]"
        s = char_
        res = re.match(p, s)
        if res == None:
            print(str_)
            break
            

\d

匹配数字,即0-9

import re

p = "\d"   # 【0-9】
s = "9"

res = re.match(p, s)
print(res)

digtal 数字技术

decimal 十进制数字

\D

匹配非数字

import re

p = "\D"   # 【】
s = "_"

res = re.match(p, s)
print(res)

\s

匹配空白符号

包括,空格,换行符,制表符, \r回车符

import re

p = "\s"
s = " "
res = re.match(p, s)
print(res)

res2 = s.isspace()
print(res2)

\S

非空白符号

\w

word 【a-zA-Z0-9_】

\W

【a-zA-Z0-9_】取反

匹配多个字符

明确功能

匹配多个字符,这些符号都是辅助

主要是用于修饰前面(单个字符匹配符)

明确一下单个的符号出现次

*

0 1 无限次

import re

p = "\d*"
s = "666是我的幸运数字"
res = re.match(p, s)
print(res)
print(res.group())

+

1次或无限次

import re

p = "\d+"
s = "10321"
res = re.match(p, s)
print(res)

0次或1次

import re

p = "\d?"
s = "1456"
res = re.match(p, s)
print(res)

{m}

匹配前一个字符出现m次

{m,n}

import re

p = "\d{3,4}"
s = "0713"
res = re.match(p, s)
print(res)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值