python正则表达式

re模块

r'str' r表示元字符串 re.I 表示忽略大小写

import re

pa1 = re.compile(r'n',re.I)
ma1 = pa1.match('name')
ma1.group()

ma2 = re.match(r'n','name')

基本语法:

   .匹配任意字符串(除了\n)

   [...]匹配字符集

   \d / \D 匹配数字/非数字

   \s / \S匹配空白/非空白字符

   \w / \W匹配单词字符[a-zA-Z0-9]/非单词字符

  *匹配前一个字符0次或者无限次

  +匹配前一个字符1次或者无限次

  ?匹配前一个字符0次或一次

  {m} /{m,n}匹配前一个字符m次或m到 n次

  *? /+? /?? 匹配模式变为非贪婪

  ^匹配字符串开头

  $匹配字符串结尾

  \A / \Z指定的字符串必须出现在开头/结尾

  分组匹配:

       | 匹配左右任意一个表达式

       (ab)括号内表达式作为一个分组

       \<number>引用编号为num的分组匹配到的字符串

      (?P<name>)分组起一个别名

      ( ?P=name)引用别名为name的分组匹配字符串

re模块方法

serch(pattern, string, flags=0)查找匹配

findall(pattern, string, flags=0)找到匹配,返回所有匹配的列表

sub(pattern,repl, string, count=0, flags=0)将字符串中匹配中匹配正则表达式的部分替换为其他值

     repl可以是字符串也可以是一个函数。 

split (pattern, string, maxsplit=0, flags=0)根据匹配分割字符串,返回分割字符串组成的列表

你可能感兴趣的:(python正则表达式)