正则表达式的总结

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了正则表达式的总结相关的知识,希望对你有一定的参考价值。

在Python中执行正则表达式时,需要导入import re

  1. 正则表达式就是:定义一个规则,用另外一个字符串,来匹配或者检验是否满足这个规则;

  2. 正则的几种方法:

    re.match(r"正则表达式","字符串"):从左边第一个字符开始匹配,如果前面有匹配不成功的,就算后面有可以匹配的,也是匹配失败;如果匹配失败会返回None

    re.search(r"正则表达式","字符串"):从左边开始搜寻,如果没有成功,会一直往下匹配,直到匹配成功为止,除非整个字符都没有匹配成功的部分。如果匹配的时候有多处可以成功,会匹配从左到右边第一个匹配内容取出。。

    re.findall(r"规则","字符串"),查找字符串所有匹配成功的

    re.sub(r"规则","要替换成的字符串","字符串")将匹配到的数据进程替换

    re.split(r"规则","字符串")根据匹配进行切割字符串

  3. 正则中表示单个字符:

    .:任意一个字符(\\n)

    \\d:匹配任意一个数字等价[0-9]

    \\D:匹配非数字,例如:a,*,$,@,!

    \\w:匹配单个字符,a-zA-Z0-9_ 等价[a-zA-Z0-9_]

    \\W:非单个字符;例如:&,%,-,+

    \\s:空白字符,空格,\\t \\n \\r

    \\S:非空白,例如:a,8,$;

  4. 正则中表示字符数量:

    *:前面的字符出现0次或者无限次数,即可有可无。例如 \\d*   ""

    +:前面的字符出现1次或者无限次数,即至少出现1次。.+     "1" ,"a" 

    ?:前面的字符要么出现0次要么出现1次,即要么出现,要么不出现。\\w?  ""

    {m}:前面的字符出现m次;例如\\d{3}   "99"

    {m,}前面的字符至少出现m次;例如 .{3,}   "#448**"

    {n,m}前面的字符出现n到m次,包括n和m; \\w{2,3}  "a##3"

  5. 正则中的原始字符串:

    Python中字符串前面加上 r 表示原生字符串,让我们忽略要转义的地方。

    特殊字符 \\n \\t \\r

    re.match(r"\\nabc","\\nabc")

    re.match(r"\\rabc","\\rabc")

    re.match(r"\\rabc","\\rabc")

    re.match(r"\\tabc","\\tabc")

  6. 正则中表示边界:

    $:匹配字符串结尾  "1[34578]\\d{9}$"   13511111119

    ^:匹配字符串开头   "^1[34578]\\d{9}$"  search()  1[34578]\\d{9}  hh13511111119ccc

    \\b:匹配单词的边界  I love you  ".+\\sve\\b"

    \\B:匹配非单词的边界   I love you  ".+\\sv\\B"

  7. 正则中的匹配分组

    |:匹配左右任意一个表达式    "0|100"   "100"

    (ab):将括号中字符串作为一个分组    "<.+><.+>(.+)"    "

    我是"

    \\num:引用分组num匹配到的字符串 "<(.+)><.+>(.+)"  \\1

    (?P)分组起别名  "<(?p.+)><.+>(.+)"  P是大写的

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




本文出自 “13369014” 博客,请务必保留此出处http://13379014.blog.51cto.com/13369014/1976894

以上是关于正则表达式的总结的主要内容,如果未能解决你的问题,请参考以下文章

关于正则表达式的总结

总结-正则表达式

常用正则表达式总结

正则表达式总结

正则表达式总结

复习总结正则表达式-上