正则表达式「2」

字符python

一,正则表达式的单字符匹配正则表达式

字符 功能 示例 结果
. 匹配任意1个字符(除了\n)
ret = re.match(".","a")
printret.group()
'a'
[] 匹配[ ]中列举的字符
ret = re.match("[0-9]","7Hello Python")
printret.group()
'7'
\d 匹配数字,即[0-9]
ret = re.match("嫦娥\d号","嫦娥2号发射成功")
printret.group()
 '嫦娥2号'
\D 匹配非数字,即不是数字 [^\d]
ret = re.match("a\Dc","abc")
printret.group()
 'abc'
\s 匹配空白,即 空格,tab键 [<空格>\t\r\n\f\v]
ret = re.match("a\sc","a c")
printret.group()
 'a c'
\S 匹配非空白 [^\S]

  ret = re.match("a\Sc","abc")编程

printret.group()
'abc' 
\w 匹配单词字符,即a-z、A-Z、0-九、_ [a-zA-Z0-9_]
ret = re.match("a\wc","abc")
printret.group()
 'abc' 
\W 匹配非单词字符 [^\w]

   ret = re.match("a\Wc","a c")编程语言

printret.group()
 'a c' 

二,原生字符串ide

  与大多数编程语言相同,正则表达式里使用"\"做为转义字符,这就可能形成反斜杠困扰。假如你须要匹配文本中的字符"\",那么使用编程语言表示的正则表达式里将须要4个反斜杠"\\":前两个和后两个分别用于在编程语言里转义成反斜杠,转换成两个反斜杠后再在正则表达式里转义成一个反斜杠。spa

  Python里的原生字符串很好地解决了这个问题,有了原始字符串,你不再用担忧是否是漏写了反斜杠,写出来的表达式也更直观。code

ret = re.match(r"c:\\a",mm).group()
print(ret)

结果:c:\a
View Code