摘要:如這個(gè)表達(dá)式能匹配兩種以連字號(hào)分隔的電話號(hào)碼一種是三位區(qū)號(hào),位本地號(hào)如,一種是位區(qū)號(hào),位本地號(hào)。有時(shí)我們要匹配的字符串可能包含正則表達(dá)式語(yǔ)法提供的一些元字符,這時(shí)我們就要用到字符轉(zhuǎn)義例如匹配,匹配。
找了很多正則表達(dá)式的教程,始終沒(méi)有滿(mǎn)意的,要不就是直接給出一張?jiān)址谋?,要不就是給出各種常用的表達(dá)式,直到我看到這篇http://deerchao.net/tutorials/regex/regex.htm
這篇教程簡(jiǎn)單明了的寫(xiě)了正則表達(dá)式的作用及怎樣使用,下面是我看完的個(gè)人理解:
理解了正則表達(dá)式的作用才能更好的掌握它,正則表達(dá)式的作用就是為了匹配字符串:
所以正則里的語(yǔ)法都是為了方便地匹配字符串而生的
下面是正則里最基本的幾個(gè)匹配符:
. 匹配除換行符以外的任意字符 w 匹配字母或數(shù)字或下劃線或漢字 s 匹配任意的空白符 d 匹配數(shù)字 匹配單詞的開(kāi)始或結(jié)束 ^ 匹配字符串的開(kāi)始 $ 匹配字符串的結(jié)束
有時(shí)我們需要自定義匹配的范圍
[aeiou] [a-z0-9A-Z_]
只要滿(mǎn)足括號(hào)里的任意字符即滿(mǎn)足匹配。
有時(shí)我們需要取反:
W 匹配任意不是字母,數(shù)字,下劃線,漢字的字符 S 匹配任意不是空白符的字符 D 匹配任意非數(shù)字的字符 B 匹配不是單詞開(kāi)頭或結(jié)束的位置 [^x] 匹配除了x以外的任意字符 [^aeiou] 匹配除了aeiou這幾個(gè)字母以外的任意字符
這些只能匹配單個(gè)的字符,有時(shí)我們要匹配多個(gè)重復(fù)的:
? 重復(fù)零次或一次 {n} 重復(fù)n次 {n,} 重復(fù)n次或更多次 {n,m} 重復(fù)n到m次 * 重復(fù)零次或多次 + 重復(fù)一次或多次分支、分組和字符轉(zhuǎn)義
分枝指的是有幾種規(guī)則,如果滿(mǎn)足其中任意一種規(guī)則都應(yīng)該當(dāng)成匹配,具體方法是用|把不同的規(guī)則分隔開(kāi)。
如:
0d{2}-d{8}|0d{3}-d{7}這個(gè)表達(dá)式能匹配兩種以連字號(hào)分隔的電話號(hào)碼:一種是三位區(qū)號(hào),8位本地號(hào)(如010-12345678),一種是4位區(qū)號(hào),7位本地號(hào)(0376-2233445)。
分組指的是可以用小括號(hào)把一條表達(dá)式括起來(lái)當(dāng)成一個(gè)子表達(dá)式來(lái)用,然后你就可以指定這個(gè)子表達(dá)式的重復(fù)次數(shù)了。
如:
(d{1,3}.){3}d{1,3}是一個(gè)簡(jiǎn)單的IP地址匹配表達(dá)式。要理解這個(gè)表達(dá)式,請(qǐng)按下列順序分析它:d{1,3}匹配1到3位的數(shù)字,(d{1,3}.){3}匹配三位數(shù)字加上一個(gè)英文句號(hào)(這個(gè)整體也就是這個(gè)分組)重復(fù)3次,最后再加上一個(gè)一到三位的數(shù)字(d{1,3})。
有時(shí)我們要匹配的字符串可能包含正則表達(dá)式語(yǔ)法提供的一些元字符,這時(shí)我們就要用到字符轉(zhuǎn)義:
例如:
deerchao.net匹配deerchao.net,C:Windows匹配C:Windows。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/79418.html
摘要:前言正則表達(dá)式時(shí)處理字符串中常用的手法,本文以簡(jiǎn)單的方式,快速展示了中正則相關(guān)的基礎(chǔ)知識(shí)點(diǎn)。文末還提供了幾個(gè)簡(jiǎn)單的正則相關(guān)面試題。接下來(lái)是正則部分,注意后面的并不匹配,也就是比如,實(shí)際匹配的值是和,在和后面加上,就完成了預(yù)期。 前言:正則表達(dá)式時(shí)處理字符串中常用的手法,本文以簡(jiǎn)單的方式,快速展示了JavaScript中正則相關(guān)的基礎(chǔ)知識(shí)點(diǎn)。文末還提供了幾個(gè)簡(jiǎn)單的正則相關(guān)面試題。個(gè)人總結(jié)...
摘要:兼容的正則表達(dá)式已經(jīng)實(shí)現(xiàn)了很多使用不同解析引擎的正則函數(shù)。中主要有兩個(gè)正則解析器一個(gè)稱(chēng)為,另一個(gè)稱(chēng)為兼容正則表達(dá)式。在中,每個(gè)正則表達(dá)式模式都是使用符合格式的字符串。 原文鏈接: Getting Started with PHP Regular Expressions Last-Modified: 2019年5月10日16:23:19譯者注: 本文是面向0正則基礎(chǔ)的phper, 很多...
摘要:一團(tuán)隊(duì)組織網(wǎng)站說(shuō)明騰訊團(tuán)隊(duì)騰訊前端團(tuán)隊(duì),代表作品,致力于前端技術(shù)的研究騰訊社交用戶(hù)體驗(yàn)設(shè)計(jì),簡(jiǎn)稱(chēng),騰訊設(shè)計(jì)團(tuán)隊(duì)網(wǎng)站騰訊用戶(hù)研究與體驗(yàn)設(shè)計(jì)部百度前端研發(fā)部出品淘寶前端團(tuán)隊(duì)用技術(shù)為體驗(yàn)提供無(wú)限可能凹凸實(shí)驗(yàn)室京東用戶(hù)體驗(yàn)設(shè)計(jì)部出品奇舞團(tuán)奇虎旗下前 一、團(tuán)隊(duì)組織 網(wǎng)站 說(shuō)明 騰訊 AlloyTeam 團(tuán)隊(duì) 騰訊Web前端團(tuán)隊(duì),代表作品WebQQ,致力于前端技術(shù)的研究 ISUX 騰...
摘要:一團(tuán)隊(duì)組織網(wǎng)站說(shuō)明騰訊團(tuán)隊(duì)騰訊前端團(tuán)隊(duì),代表作品,致力于前端技術(shù)的研究騰訊社交用戶(hù)體驗(yàn)設(shè)計(jì),簡(jiǎn)稱(chēng),騰訊設(shè)計(jì)團(tuán)隊(duì)網(wǎng)站騰訊用戶(hù)研究與體驗(yàn)設(shè)計(jì)部百度前端研發(fā)部出品淘寶前端團(tuán)隊(duì)用技術(shù)為體驗(yàn)提供無(wú)限可能凹凸實(shí)驗(yàn)室京東用戶(hù)體驗(yàn)設(shè)計(jì)部出品奇舞團(tuán)奇虎旗下前 一、團(tuán)隊(duì)組織 網(wǎng)站 說(shuō)明 騰訊 AlloyTeam 團(tuán)隊(duì) 騰訊Web前端團(tuán)隊(duì),代表作品WebQQ,致力于前端技術(shù)的研究 ISUX 騰...
閱讀 3435·2021-10-20 13:49
閱讀 2809·2021-09-29 09:34
閱讀 3706·2021-09-01 11:29
閱讀 3088·2019-08-30 11:01
閱讀 853·2019-08-29 17:10
閱讀 891·2019-08-29 12:48
閱讀 2789·2019-08-29 12:40
閱讀 1363·2019-08-29 12:30