日本免费精品_最新日韩一区_亚洲视频一区在线_a在线视频观看_天天射夜夜骑_粉嫩av一区二区三区_欧美中日韩免费视频_综合图区欧美_国内精品美女在线观看_午夜精品久久久久久久男人的天堂

首頁 > 編程 > Regex > 正文

詳解正則表達式

2020-03-22 17:21:53
字體:
來源:轉載
供稿:網友

html' target='_blank'>正則表達式語言由兩種基本字符類型組成:原義(正常)文本字符和元字符。
元字符使用正則表達式具有處理能力。元字符既可以是放在[ ] 中的任意單個字符(如 [a]表示匹配單個小寫字符 a),也可以是字符序列(如 [a-d] 表示匹配 a 、b、 c、 d 之間的任意一個字符,而 /w 表示任意英文字母和數字及下劃線),常見的元字符如下:

常見的元字符
字符描述特別說明
.匹配除換行符(/n)以外的任意字符~[abcde]匹配 a b c d e 之中的任意一個字符所有字符是 的關系[a-h]匹配 ah之間的任意一個字符~[^fgh]不與 fgh之中的任意一個字符匹配在 中括號[ ] 的第一個字符前加上 ^ 表示 取反
不匹配中括號里面出現的任意字符
/w匹配大小寫英文字符及數字 0 到 9 之間的任意一個及下劃線,相當于[a-zA-Z0-9_]~/W/w 相反,相當于 [^a-zA-Z0-9_]~/s匹配任意的空白符,相當于 [/f/n/r/t/v]~/S/s相反,相當于 [^/s]~/d匹配任何 0 到 9 之間的單個數字,相當于 [0-9]~/D/d 相反,相當于[^0-9]~[/u4e00-/u9fa5]匹配任意單個漢字(中文)(這里用的是 Unicode 編碼表示的漢字)~/b匹配單詞的開始或結束~^匹配字符串的開始放在中括號的第一個字符前 則變為 取反的意思$匹配字符串的結束~
正則表達式限定符

作用:限定這個符號前面 一個 單元 多出現的次數
單元:

  1. 如果前面出現的是一個字符的話,則這一個字符就為一個 單元
  2. 如果前面我們用小括號把一個很長的字符串括起來的話,那么整個小括號里面都算是一個 單元

上面的元字符都是針對單個字符匹配的,要想同時匹配多個字符的話,還需要借助限定符,下面是一些常見的限定符(下表中 n 和 m 都是表示 整數。)

字符描述特別說明
*匹配 0 到 多 個元字符,相當于 {0,}~?匹配 0 到 1 個元字符, 相當于 {0,1}~+匹配至少 1 個元字符,相當于 {1,}~{n}匹配 n 個元字符~{n,}匹配至少 n 個元字符~{n,m}匹配 n 到 m 個元字符~/b匹配單詞邊界~^字符串必須以指定的字符開始~$字符串必須以指定的字符結束~
說明 - 特例
  1. 可以將多個元字符或者原義文本字符用括號括起來形成一個 分組,比如 ^(13)[4-9]/d{8}$ 表示任意以 13 開頭的移動手機號碼。
    1. abcabcabc+ 表示 最后的字母 c 出現 1 次或 多次;
    2. (abcabcabc)+ 表示 整個字符串 abcabcabc 出現 1 次或 多次。
  2. 可以使用 | 來表示 的關系,例如 z|j|q 表示匹配 z 、j、q 之中的任意一個字母。其實等價于 [zjq]
    1. ab|cd|ef 表示的是:要么是 ab、要么是 cd要么是 ef
    2. a(b|cd|e)f 表示的是:以a開頭,要么是 b、要么是 cd要么是 e,最后以f結尾。
    3. 總結:|) 的唯一邊界是 小括號(( )
  3. [0-9A-Z.?] 這個正則你如何理解?
    1. .? 出現在中括號中時,.? 將變為 普通字符,它就是 點 和 問號。你可以理解為 [ ] 的優先級要大于. 和 ? 的優先級。
    2. 此正則表達式將會完全匹配字符串 ?aaa.bbb ,記住這里 . 和 ? 被完全當做了普通字符。
高級1 - 多選結構

多選結構其實就是元字符 | (或)的使用。
界定范圍:開頭、結尾、小括號

正則含義
Windows98|Windows2000|WindowsXP匹配Windows98或者Windows2000或者WindowsXP^Windows98|Windows2000|WindowsXP$Windows98開頭或者包含Windows2000或者以WindowsXP結尾
注意^$都包含在|的范圍內,因為|的界限只有:開頭、結尾、小括號
Windows(98|2000|XP)Windows然后98 或者2000或者XP

總結:多選結構可以包括很多字符,但不能超越 括號 的界限。

高級2 - 分組與后向引用分組
  • 我們已經了解怎么重復單個字符;
  • 但如果想要重復一個字符串該怎么辦?你 可以用小括號來指定子表達式(也叫做分組)。
  • (/d{1,3}/.){3}/d{1,3} 簡單的 IP 地址匹配表達式
  • 但是它也將匹配 256.300.888.999 這種不可能存在的 IP 地址。你能寫一個更準確的正則?
  • ((2[0-4]/d|25[0-5]|[01]?/d/d?)/.){3}(2[0-4]/d|25[0-5]|[01]?/d/d?)
反向引用
  • 使用小括號指定一個子表達式(分組)后,匹配這個子表達式的文本可以被捕獲,從而在表達式或其他程序中作進一步的處理。
  • 默認情況下,每個分組會自動擁有一個組號,規則是:以分組的左括號為標志,從左向右,第一個分組的組號為 1 ,第二個為 2 ,依次類推。

示例:

  • /b(/w+)/b/s+/1/b 可以用來匹配重復的單詞
  • 匹配諸如:where where go, tom tom happy

直白解釋:
正則表達式中,前面用小括號進行劃分(分組),后面把小括號匹配到的內容引用到后面來,分別用/1/2等 來表示。(第一個小括號極/1...)。如果存在 小括號嵌套小括號的情況 (/w+(.?)) 記住:這個時候要以 ( 為標志 從左往右 數小括號就可以了。

高級3 - 環視(零寬斷言)
  • 環視不匹配任何字符,只匹配文本中的 特定位置。類似于/b^$ 那樣。環視不會占用字符。
  • 環視分為順序和逆序兩種:
    • 順序
      • (?=exp) 位置的后面能匹配 exp。例如:(?=/d) 當前位置右邊是數字。
      • (?!exp) 位置的后面不能匹配 exp。例如:(?!/d) 當前位置右邊不是數字。
    • 逆序
      • (?<=exp) 位置的前面能匹配 exp。例如:(?<=/d) 當前位置左邊是數字
      • (?<!exp) 位置的前面不能匹配 exp。例如:(?!/d) 當前位置左邊不是數字。
高級4 - 貪婪與懶惰
  • 當正則表達式中包含能接受重復的 量詞 (指定數量的代碼,例如:+*{3,12} 等)時, 通常的行為是匹配盡可能多的字符。
  • 正則表達式:a.*b,它將會匹配最長的以 a 開始,以 b 結束的字符串。如果用它來搜索 aabab 的話,它會匹配整個字符串 aabab,這被稱為 -------貪婪匹配
  • -
  • 我們更需要 懶惰匹配,也就是匹配盡可能少的字符,前面給出的量詞都可以被轉化為 懶惰匹配模式, 只要在它后面加一個問號 ? 。這樣 .*? 就意味著匹配任意數量的重復,但是在能使整個 匹配成功的前提下使用最少的重復。
  • a.*?b 匹配最短的,以 a 開始, 以 b 結束的字符串。如果把它應用于 aabab 的話,它會匹配 aabab

總結:

貪婪與懶惰模式之間的區別就在于:懶惰模式 在量詞 * 的后面多了一個 問號 ?

高級5 - 模式匹配的優先級

在使用正則表達式時,需要注意匹配的順序。通常相同優先級 從左到右 進行計算,不同優先級的運算 先高后低。各種操作符的匹配順序優先級 從高到低 如下表所示。

順序元字符描述
1/轉義字符2()(?:)(?=)[]模式單元和原子表3*+{n}{n,}{n,m}重復匹配4^$/b/B/A/Z邊界限制5|模式選擇
實例1. 字符轉義

1問:要匹配字符串 333333/$33/33333 中的 /$ 正則應該怎么寫?
2問:如果在 PHP 中 preg_match 函數分別用單引號和雙引號的表達式來匹配上面的 /$,怎么寫?

答案:

  • 表達式需要的規則是 ///$
  • 用單引號表示上面的字符串 '///////$/'。(為方便查看我們拆分一下為 '/// // // $/'
  • 用雙引號表示上面的字符串 "////////$/"。(為方便查看我們拆分一下為 "/// // // /$/"
  • 問什么呢?

再答:

  1. PHP 中單引號不轉義任何字符,但是唯獨轉義 / ,所以我們需要 6個/ 來生成表達式。
  2. 雙引號除了轉義 / 以外,還需要多一個 / 用來轉義 $ 所以它 需要 7 個/

相關教程推薦:PHP視頻教程

以上就是詳解正則表達式的詳細內容,更多請關注 其它相關文章!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
国产高清不卡av| 久久久综合精品| 久久久水蜜桃| 中文字幕亚洲高清| 国产三级第一页| 欧美性极品xxxx做受| 国产午夜精品一区二区三区视频| 亚洲.国产.中文慕字在线| 亚洲成年人在线播放| 在线日韩中文字幕| 中文字幕在线中文字幕二区| 日韩亚洲欧美中文三级| 国产中文在线观看| 日韩免费电影网站| 精品国内自产拍在线视频| 不卡视频一区二区三区| 欧美日韩亚洲系列| 日韩精品综合在线| 国产 日韩 欧美 综合| 久久人人88| 国产乱国产乱老熟300| 久久蜜桃一区二区| 国产黄色在线观看| 欧美高清一级片在线| av中文网站| 欧美大片在线观看一区| 国产区在线看| 99在线精品视频免费观看20| 欧美日韩中国免费专区在线看| 在线精品视频免费播放| 国产一级片播放| 日韩精品在线私人| 日韩中文字幕观看| 香蕉av一区| 精品在线网站观看| 欧美三级在线看| 日本va欧美va精品发布| 中文官网资源新版中文第二页在线观看| 国产成人精品三级| 欧美乱大交xxxxx另类| 1024国产在线| h片精品在线观看| 91精品国产入口| 中文字幕精品亚洲| 亚洲综合中文字幕在线| 亚洲欧洲日产国码av系列天堂| 久草视频观看| 日韩精品手机在线观看| 亚洲成年人在线播放| 一级免费a一片| 91精品国产自产在线观看永久∴| 精品1区2区3区| 欧美专区中文字幕| 国产日韩1区| 亚洲区中文字幕| av一区在线| 免费网站看黄yyy222| 国产99在线|亚洲| 国产一二三精品| 亚洲视频中文字幕| 亚洲狠狠婷婷综合久久久久图片| 99日韩精品| 国产伦精品免费视频| 美女尤物久久精品| 久久久精品福利| 日韩精品在线免费观看视频| 日韩在线小视频| 免费在线播放av| 中文字幕日韩高清| 日韩在线 中文字幕| 欧美.日韩.国产.一区.二区| 精品熟女一区二区三区| www.eeuss影院| 亚洲免费福利视频| 伊人网站在线| 欧美日韩三级视频| 久久精品免费在线观看| 日韩亚洲不卡在线| 中文在线一区二区| 久久精品在线观看| 国产www.大片在线| 国产一区在线观看视频| 国产福利免费在线观看| 91精品国产经典在线观看| 久久视频一区| 日韩国产在线不卡视频| 一区二区三区鲁丝不卡| 一本大道一区二区三区| 国产不卡精品在线| 日韩精品手机在线观看| 日韩av不卡在线观看| 中文精品电影| 成人久久在线| 国产高清在线视频| 国产三级视频网站| 日韩中文字幕在线播放| 日韩精品在线视频| 国产欧美日韩在线观看| 91精品婷婷国产综合久久竹菊| 亚洲一区中文字幕在线| 国产极品嫩模在线视频一区 | 精品全国在线一区二区| 亚洲综合中文字幕在线| 精品国产欧美日韩不卡在线观看| 国产在线欧美日韩| 亚洲视频色图| 一区二区三区精品在线| √新版天堂资源在线资源| av亚洲免费| 欧美在线日韩精品| 亚洲国产欧美日韩在线| 中文字幕亚洲视频| 中文在线视频| 亚洲最新免费视频| 久久精品国产视频| 欧美亚洲国产日韩| 91国内精品在线视频| 老司机久久99久久精品播放免费| 欧美日韩在线精品一区二区三区激情综| 福利在线国产| 中文字幕在线国产| 在线观看国产一区| 午夜精品一区二区三区免费视频| 日韩欧美在线字幕| 一区二区在线看| 久久韩国免费视频| 99这里有精品视频| 欧美日韩高清一区二区| 在线观看免费国产小视频| 日韩国产一区久久| 婷婷久久综合九色国产成人| 国产福利三区| 亚洲视频日韩| 欧美日韩中文字幕在线观看| 精品乱人伦一区二区三区| 精品中文在线| 国产三级视频在线播放线观看| 欧美日韩夫妻久久| 中文字幕欧美日韩在线| 国产成人综合精品| 精品久久久视频| 老司机久久99久久精品播放免费| 欧美日韩夫妻久久| 国产在线黄色| 欧美日韩精品国产| 国产欧美日韩中文字幕| lutube成人福利在线观看| 视频一区不卡| 欧美日韩在线播放一区| 天堂在线一区二区三区| 亚洲专区一二三| 久久91精品国产91久久小草| 婷婷综合福利| 欧美国产91| 日韩免费电影网站| 中文字幕第一页在线| 国内激情久久| 欧美三级一区二区三区| 国产小视频在线| 一区三区视频| 蜜桃久久av| 91精品网站| 日韩免费不卡avV| 婷婷久久综合网| 尤物av一区二区| 中文字幕一区不卡| 一区视频在线播放| 欧美日韩精品是欧美日韩精品| 亚洲福利在线观看| 久久91精品久久久久久秒播| 亚洲大片精品永久免费| 中文字幕99| 日韩欧美999| 91精品国产高清久久久久久| 不卡在线视频| 91精品国产自产91精品| 在线视频一区二区三区在线播放| 中文字幕 日韩 欧美| 在线视频1区2区| 日韩国产高清一区| 欧美日中文字幕| 亚洲一区在线观看网站| 欧美三级日韩三级国产三级| 欧美日韩综合在线免费观看| 91午夜在线| 日韩不卡一二区| 欧美日韩国产免费观看视频| 日韩国产成人精品| 不卡一区二区三区视频| 成人禁用看黄a在线| 日韩欧美在线精品| 国产区视频在线观看| 日本啊v在线| 欧美专区中文字幕| 欧美大片在线观看一区 | 日韩欧美在线中文字幕| 国产日产一区二区三区| 99在线精品视频免费观看20| 国产九九在线| 日韩精品在线视频| 中文官网资源新版中文第二页在线观看 | 久久精品最新免费国产成人| 国产欧美日韩中文| 久久夜色精品国产欧美乱极品| 欧美日韩中文字幕综合视频| 日韩欧美国产片| 久久精品国产2020观看福利| 欧美日韩国产高清| 亚洲免费精品视频| 免费中文字幕日韩欧美| 日韩欧美999| 国产欧美日韩在线播放| 亚洲视频资源在线| 欧美99久久| 中文字幕日韩视频| 亚洲成av人综合在线观看| 国产三级精品网站| 精品国产免费观看一区| 国产在线一在线二| 日韩午夜一区| 日韩一级免费视频| 国产 日韩 欧美 综合 一区| 久久久99精品久久| 亚洲第一福利视频在线| 中文字幕在线观看国产| 久久精品国产视频| 欧美日韩国产在线看| 国产一级免费| 日韩在线精品视频| 黄色在线资源| 精品国产1区2区3区| 欧美.日韩.国产.一区.二区| 亚洲一区在线观看免费| 精品国产99久久久久久| 日韩国产91| 内射国产内射夫妻免费频道| 国产小视频免费在线观看| 日韩欧美在线视频日韩欧美在线视频| 在线观看国产福利视频| 在线欧美日韩国产| 日韩精品一页| 午夜高潮免费视频| 九一精品国产| 亚洲一区在线观看网站| 色综合婷婷久久| www.三级.com| 伊人网站在线| 国产婷婷一区二区| 一区二区三区在线|网站| 中文国产字幕在线观看| 不卡福利视频| 欧美日韩国产观看视频| 成片免费观看| 欧美精品一区二区三区在线播放| 不卡av免费在线| 二区视频在线观看| 91精品国产乱码久久蜜臀| 成人一区二区不卡免费| 久久久久蜜桃| а√天堂中文在线资源8| 中文字幕久久av| av免费观看网站| 日韩精品在线免费播放| 国产www在线观看| 91久久久久| 91欧美日韩在线| 亚洲福利在线看| 日本视频久久久| 久久人人精品| 欧美日韩精品免费| 91欧美在线| 色综合久久88色综合天天免费| 久久精品99国产国产精| 日韩精品福利视频| 国产不卡的av| 日韩欧美国产午夜精品| 国产欧美日韩成人| 国产欧美日韩亚洲| 亚洲社区在线| 亚洲国内精品视频| 久久久91精品国产| 欧美xxxx中国| 精品熟女一区二区三区| 区日韩二区欧美三区| 在线视频你懂得一区| 日本黄色一区二区| 97国产视频| 中文字幕在线看视频国产欧美| 国产一卡二卡3卡4卡四卡在线| 正在播放日韩精品| 欧美日韩国产中文精品字幕自在自线| 国产日韩在线亚洲字幕中文| 欧美二区在线观看| 在线观看精品国产| 中文 欧美 日韩| 蜜桃视频中文字幕| 日韩免费高清一区二区| 国产欧美日韩在线| 欧美日韩午夜在线视频| 国产欧美日韩最新| 日韩 欧美 中文| 一级日韩一级欧美| 日韩一级中文字幕| 黄色片免费看| 亚洲天堂视频一区 | 在线视频国内一区二区| 日韩中文字幕视频网| 亚洲三级中文字幕| 欧美高清一级片在线| wwwav在线播放| 欧美在线亚洲一区| 一区二区在线看| 激情综合色综合久久| 国产在线第一页| 热久久精品国产| 国产一级在线免费观看| av中文在线播放| 精品日韩在线观看| 久久久精品日韩| 最新中文字幕在线播放| 精品成a人在线观看| 美女在线视频一区| 中文字幕日韩视频| 久久精品最新免费国产成人| 久久99精品久久久久婷婷| www.中文字幕在线观看| 欧美不卡视频| 亚洲高清在线观看一区| 国产资源在线观看| 日韩www在线| 日韩不卡一二区| 婷婷中文字幕一区三区| 精品亚洲成a人片在线观看| 欧美日韩一二三四| 日本а中文在线天堂| 亚洲免费婷婷| 日韩一级在线免费观看| 亚洲大胆人体av| 国产91久久久久| 欧美成人精品在线| av一卡二卡| 91精品国产色综合久久不卡蜜臀| 日韩中文欧美在线| 婷婷久久综合网| 欧美日韩在线观看一区| 亚洲经典中文字幕| 99精品免费观看| 中文字幕欧美日韩在线不卡| 免费中文字幕日韩欧美| 欧美日韩综合不卡| 亚洲综合日韩| 日韩精品视频在线看| 国产不卡一区| 中文字幕视频在线免费欧美日韩综合在线看| 欧美日韩久久不卡| 国产欧美日韩三级| 在线观看91精品国产入口| 日韩精品久久久| 中文字幕亚洲国产| 中文字幕亚洲字幕| 日本xxxwww免费视频| 国产视频一区三区| 欧美日韩性视频一区二区三区| 91欧美日韩麻豆精品| 日韩精品大片| 亚洲.国产.中文慕字在线| 日韩av一区二区在线| 日韩欧美一级二级三级久久久| 91精品免费看| 91精品国产综合久久香蕉最新版 | 国产成人中文字幕| 亚洲黄页一区| av中文资源在线| 日韩视频专区| 另类专区欧美| 国产成免费视频| 高清国产一区| 日韩欧美视频一区二区三区四区| www..com日韩| 国产黄色片大全| 热久久精品国产| 亚洲成年人影院在线| 欧美三级免费观看| av免费在线不卡| 精品综合久久久久| 国产一区三区三区| 久久riav| 精品一二线国产| 精品福利二区三区| 亚洲欧洲日韩在线| 日韩精品一区二区三区视频播放| 欧美日韩中文字幕在线| 国产偷久久久精品专区| a级在线免费观看| 中文字幕在线观看网址| 99色在线视频| 国产在线看一区| 91久久中文| 成人福利一区| 久久精品国产99|