2019-07-29

正则表达式中常用的元字符

  • ‘.’匹配除换行符之外的任意字符。
  • ’\w‘ 匹配中英文字符,数字或者下划线。
  • ‘\s’ 匹配任意的空白符,空格,制表符或者换行符。
  • ‘\d’ 匹配数字。
  • ’\b‘ 匹配单词的结束或者开始。
  • ‘^’ 匹配字符串的开始。
  • ’$‘ 匹配字符串的结尾。

当然如果要匹配的字符串本身包含元字符的话,那么你就需要使用转义字符’\‘来取消元字符在表达式中的特殊意义。如下:当你需要匹配www.XtHhua.com,表达式就应该这样写 :www.XtHhua.com

正则表达式中常用的限定符 即指定数量的代码

  • ’*‘ 重复零次或者多次。
  • ’+‘ 重复一次或者更多次。
  • ’?‘ 重复零次或者一次。
  • '{n}' 重复n次。
  • '{n,}' 重复n次或者更多次。
  • '{n,m}' 重复n到m次。

常用的反义代码

  • ‘\W’ 匹配任意不是中英文字符,数字或者下划线。
  • ’\S‘ 匹配任意不是空白符的字符。
  • '\D' 匹配任意非数字的字符。
  • ’\B‘ 匹配不是单词开头或结束的位置。
  • ’[^x]‘ 匹配除了x以外的任意字符。
  • ’[^aeiou]‘ 匹配除了aeiou以外的任意字符。

后向引用
使用小括号指定一个子表达式后,匹配这个子表达式的文本可以在表达式或其它程序中作进一步的处理。默认情况下,每个分组会自动拥有一个组号,规则是:从左向右,以分组的左括号为标志,第一个出现的分组的组号为1,第二个为2,以此类推。

后向引用用于重复搜索前面某个分组匹配的文本。例如,\1代表分组1匹配的文本。

如下所示例子:表达式 \b(\w+)\b\s+\1\b 可以用来匹配重复的单词,像go go, 或者kitty kitty。这个表达式首先是一个单词,也就是单词开始处和结束处之间的多于一个的字母或数字(\b(\w+)\b),这个单词会被捕获到编号为1的分组中,然后是1个或几个空白符(\s+),最后是分组1中捕获的内容(也就是前面匹配的那个单词)(\1)。

常用分组语法

1.捕获

  • (exp) 匹配exp,并捕获文本到自动命名的组里。
  • (?<name>exp) 匹配exp,并捕获文本到名称为name的组里,也可以写成(?'name'exp)。
  • (?:exp) 匹配exp,不捕获匹配的文本,也不给此分组分配组号。

2.零宽断言
3.负向零宽断言

贪婪与非贪婪

当正则表达式中包含能够重复的限定符时,通常的行为是在整个表达式能够满足匹配的情况下,尽可能的匹配更多的字符。如下例子所示:现有字符串 aabab 当表达式为a.b时,匹配的结果是整个字符串aabab,这就是所谓的贪婪匹配。
但有时我们需要的是匹配尽可能少的字符,这就需要用到懒惰匹配 。我们将上面的表达式修改为a.
?b时,匹配的结果就是aab和ab两个字符串

懒惰限定符##

  • *? 重复任意次,尽可能少的重复。
  • +? 重复一次或更多次,但尽可能少的重复。
  • ?? 重复一次或者零次但尽可能少的重复。
  • {n,m}? 重复n次到m次但尽可能少的重复。
  • {n,}? 重复n次以上,但尽可能少的重复。
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 213,254评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,875评论 3 387
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 158,682评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,896评论 1 285
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,015评论 6 385
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,152评论 1 291
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,208评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,962评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,388评论 1 304
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,700评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,867评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,551评论 4 335
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,186评论 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,901评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,142评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,689评论 2 362
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,757评论 2 351

推荐阅读更多精彩内容

  • 正则表达式到底是什么东西?字符是计算机软件处理文字时最基本的单位,可能是字母,数字,标点符号,空格,换行符,汉字等...
    狮子挽歌阅读 2,142评论 0 9
  • http://www.jb51.net/tools/zhengze.html 正则表达式30分钟入门教程 版本:v...
    nullleaf阅读 585评论 0 2
  • 注:本篇文章只为方便查看,特此保留,如有冒犯,敬请谅解!!! 本文目标 30分钟内让你明白正则表达式是什么,并对它...
    阿杰Alex阅读 1,480评论 0 10
  • 原文:http://www.jb51.net/tools/zhengze.html 然后强迫症如我,因为我怕网页哪...
    你再不来我要下雪了阅读 834评论 1 6
  • 版本:v2.3.5 (2017-6-12) 作者:deerchao 转载请注明来源 目录 跳过目录 本文目标 如何...
    readilen阅读 954评论 2 13