Python–re模块的findall等用法

1)正则表达式含义

. # 点可代表一切字符

\ # 起转义作用

[…] # 指代方括号中的任意字符

\d # 指代数字0-9

\D # 指代非数字

\s # 指代一切空格,包括tab制表符、空格、换行等

\S # 指代非空格

\w # 指代大小写字母、数字和下划线

\W # 指代非大小写字母、数字和下划线

* # 匹配前面字符 >=0 次

+ # 匹配前面字符1次及以上

? # 匹配前面字符0次或1次

{m} # 匹配m次

{m,n} # 匹配m到n次

{m,} # 至少匹配m次

 2)结合re模块完成字符串的匹配

re.findall(pattern, string, flags=0)

pattern–>正则表达式

string–>需要处理的字符串

flags–>说明匹配模式,如是否大小写re.I

注:findall不同的表现形式: 

  • import re  第一种
  • kk = re.compile( r’\d+’) 
  • kk.findall( ‘one1two2three3four4’) 
  • #[1,2,3,4]  第二种
  • #注意此处findall()的用法,可传两个参数; 
  • kk = re.compile( r’\d+’)
  • re.findall(kk, “one123”) 第三种 kk = “one123” re.findall(r’\d+’, kk)

re.split(pattern, string, maxsplit=0, flags=0)

pattern–>正则表达式

string–>需要处理的字符串

maxsplit–>最大匹配次数。0表示匹配所有次

sub(pattern, repl, string, count=0, flags=0)

pattern–>正则表达式

repl–>新的替换内容

string–>需要处理的字符串

count–>替换次数。0表示匹配替换所有次

flags–>匹配模式