码迷,mamicode.com
首页 > 其他好文 > 详细

正则表达式

时间:2018-10-10 22:07:06      阅读:149      评论:0      收藏:0      [点我收藏+]

标签:reg   转义   ...   http   测试   制表符   下划线   还需   \n   

一 正则表达式:     正则表达式是对字符串串操作的?一种逻辑公式. 我们?一般使?用正则表达式对字符串串进?行行匹 配和过

  优点: 灵活, 功能性强, 逻辑性强  

  缺点: 上?手难. ?一旦上?手, 会爱上这个东?

  ?具: 各?大?文本编辑器?一般都有正则匹配功能. 我们也可以http://tool.chinaz.com/regex/进?行行在线测试.

二 

  字符组:单?用[]括起来. 在[]中出现的内容会被匹配. 例例如:[abc] 匹配a或b或c [a-zA-Z0-9]

 1 基本元字符

.     匹配除换?行行符以外的任意字符 
\w    匹配字?母或数字或下划线 
\s    匹配任意的空?白符
\d    匹配数字
\n    匹配?一个换?行行符
\t    匹配?一个制表符 
\b    匹配?一个单词的结尾 
^     匹配字符串串的开始 
$     匹配字符串串的结尾 
\W    匹配?非字?母或数字或下划线 
\D    匹配?非数字 
\S    匹配?非空?白符 
a|b   匹配字符a或字符b 
()    匹配括号内的表达式,也表示?一个组
[...]    匹配字符组中的字符
[^...]    匹配除了了字符组中字符的所有字符

 2量词

*    重复零次或更更多次 
+    重复?一次或更更多次 
?    重复零次或?一次 
{n}    重复n次 
{n,}  重复n次或更更多次 
{n,m}    重复n到m次 

 注意:在量词中的 *,  +, {} 都属于贪婪匹配. 就是尽可能多的匹配到结果.

    在使?用.*后?面如果加了了? 则是尽可能的少匹配. 表?示惰性匹配

      .*?x的特殊含义  找到下?一个x为?止. x结尾

       6. 转义                在正则表达式中, 有很多有特殊意义的是元字符, ?比如\n和\s等,如果要在正则中匹 配正常的"\n"?而不不是"换?行行符"就需要对"\"进?行行转义, 变成‘\\‘.在python中, ?无论是正则表达式, 还 是待匹配的内容, 都是以字符串串的形式出现的, 在字符串串中\也有特殊的含义, 本身还需要转 义. 所以如果匹配?一次"\n", 字符串串中要写成‘\\n‘, 那么正则?里里就要写成"\\\\n",这样就太麻烦了了. 这个时候我们就?用到了了r‘\n‘这个概念, 此时的正则是r‘\\n‘就可以了了.

正则表达式

标签:reg   转义   ...   http   测试   制表符   下划线   还需   \n   

原文地址:https://www.cnblogs.com/tcpblog/p/9768805.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!