Python中的正则表达式
Python中的正则表达式
对Python中正则表达式的理解,主要就是对符号的理解,主要的符号有:.
默认匹配一个字符,不包含换行符,如果设置DOTALL则匹配换行符^
匹配行首$
匹配行尾*
匹配0个或者多个重复+
匹配一个或者多个重复?
匹配一个或者零个重复*?,+?,??
按照非贪婪模式匹配{m},{m,n},{m,n}?
分别匹配m个重复,m至n个重复,m至n个重复按照非贪婪模式\
转义[]
[abc],[a-z][^a-z]|
或者匹配 'a|b'(...)
匹配组(?iLmsux)
(?:...)
(?P...)
>>> re.match('(?P(?P=name)
>>> re.match(r'(?P'abc----abc'
(?#...)
#后面的内容为注释(?=...)
匹配的字符串后面的内容需要匹配
>>> re.match(r'phone(?=\d{3})','phone123').group()
'phone'#
匹配的字符后面内容不能匹配
>>> re.match(r'phone(?!\d{3})','phoneabc123').group()
'phone'
(?<=...)
匹配的字符串前面需要匹配
>>> re.search('(?<=\d)def', '1def').group()
'def'
(?
评论关闭