Python正则表达式ma = re.match(r'\d$','09') 这样不对呢
在python的正则表达式中例题中pattern = re.compile(r'\d+') r'\d+'是什么意思呢?~
\d 只能匹配一个, 要匹配玩用
ma = re.match(r'\d+$','09')
我一般这样用
ma = re.search(r'\d+$','09')
匹配一个数字
r的意思是不转义,即\表示原样的\。否则有可能被视图按\d为一个字符解析转义。
re.match是从字符串开头进行匹配,re.search可以在字符串任何位置匹配
import re
find=re.match(r"world$","hello world")
print(find)
没有匹配,结果是None
find=re.search(r"world$","hello world")
print(find)
匹配,返回一个MatchObject对象
你的正则翻译过来就是匹配长度为一个字符的数字,所以是不对的,
match是从头开始,$是结尾标示,如果匹配1个或以上字符使用+
>>> re.match(r'\d+$','09').group()
'09'
>>> re.match(r'\d+','09').group()
'09'
>>> re.match(r'\d','09').group()
'0'
>>> re.search(r'\d$','09').group()
'9'
\d 只能匹配一个, 要匹配玩用
ma = re.match(r'\d+$','09')
我一般这样用
ma = re.search(r'\d+$','09')
匹配一个数字