您的位置:首页 > 编程语言 > Python开发

Python常用正则表达式符号浅析

2014-08-13 00:00 369 查看
对Python中正则表达式的理解,主要就是对符号的理解,本文即对Python中常用的正则表达式符号进行简析。其主要的符号有:

.

默认匹配一个字符,不包含换行符,如果设置DOTALL则匹配换行符
^

匹配行首
$

匹配行尾
*

匹配0个或者多个重复


匹配一个或者多个重复


匹配一个或者零个重复
*?,+?,??

按照非贪婪模式匹配
{m},{m,n},{m,n}?

分别匹配m个重复,m至n个重复,m至n个重复按照非贪婪模式
\

转义
[]

[abc],[a-z][^a-z]

|

或者匹配 'a|b'

(...)

匹配组
(?iLmsux)

(?:...) (?P<name>...)
>>> re.match('(?P<name>abc){2}','abcabc').groupdict()
{'name': 'abc'}
(?P=name)
>>> re.match(r'(?P<name>abc)----(?P=name)','abc----abc').group()
'abc----abc'
(?#...) #后面的内容为注释
(?=...)


匹配的字符串后面的内容需要匹配
>>> re.match(r'phone(?=\d{3})','phone123').group()
'phone'#

(?!...)


匹配的字符后面内容不能匹配
>>> re.match(r'phone(?!\d{3})','phoneabc123').group()
'phone'
(?<=...)


匹配的字符串前面需要匹配

(?<!...) 匹配的字符前面不能匹配

(?(id/name)yes-pattern|no-pattern)

\number

\A 匹配字符串的开头

\b 匹配单词边界
\B

\b的反义
\d 表示[0-9]

\D表示 [^0-9]

\s表示 [ \t\r\n\f\v]

\S 为非空白字符

\w等价于 [a-zA-Z0-9]

\W \w的反义
\Z 匹配字符串的结束
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: