freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

揭開(kāi)正則表達(dá)式的神秘面紗(編輯修改稿)

2025-10-22 18:29 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 配結(jié)果是:成功;匹配到的內(nèi)容是:Jack;匹配到的位置時(shí):開(kāi)始于15,結(jié)束于19。 舉例6:表達(dá)式 (go\s*)+ 在匹配 Let39。s go go go! 時(shí),匹配結(jié)果是:成功;匹配到內(nèi)容是:go go go;匹配到的位置是:開(kāi)始于6,結(jié)束于14。 舉例7:表達(dá)式 ¥(\d+\.?\d*) 在匹配 $,¥ 時(shí),匹配的結(jié)果是:成功;匹配到的內(nèi)容是:¥;匹配到的位置是:開(kāi)始于6,結(jié)束于10。單獨(dú)獲取括號(hào)范圍匹配到的內(nèi)容是:。2. 正則表達(dá)式中的一些高級(jí)規(guī)則 匹配次數(shù)中的貪婪與非貪婪 在使用修飾匹配次數(shù)的特殊符號(hào)時(shí),有幾種表示方法可以使同一個(gè)表達(dá)式能夠匹配不同的次數(shù),比如:{m,n}, {m,}, ?, *, +,具體匹配的次數(shù)隨被匹配的字符串而定。這種重復(fù)匹配不定次數(shù)的表達(dá)式在匹配過(guò)程中,總是盡可能多的匹配。比如,針對(duì)文本 dxxxdxxxd,舉例如下:表達(dá)式匹配結(jié)果(d)(\w+)\w+ 將匹配第一個(gè) d 之后的所有字符 xxxdxxxd(d)(\w+)(d)\w+ 將匹配第一個(gè) d 和最后一個(gè) d 之間的所有字符 xxxdxxx。雖然 \w+ 也能夠匹配上最后一個(gè) d,但是為了使整個(gè)表達(dá)式匹配成功,\w+ 可以 讓出 它本來(lái)能夠匹配的最后一個(gè) d 由此可見(jiàn),\w+ 在匹配的時(shí)候,總是盡可能多的匹配符合它規(guī)則的字符。雖然第二個(gè)舉例中,它沒(méi)有匹配最后一個(gè) d,但那也是為了讓整個(gè)表達(dá)式能夠匹配成功。同理,帶 * 和 {m,n} 的表達(dá)式都是盡可能地多匹配,帶 ? 的表達(dá)式在可匹配可不匹配的時(shí)候,也是盡可能的 要匹配。這 種匹配原則就叫作 貪婪 模式 。 非貪婪模式: 在修飾匹配次數(shù)的特殊符號(hào)后再加上一個(gè) ? 號(hào),則可以使匹配次數(shù)不定的表達(dá)式盡可能少的匹配,使可匹配可不匹配的表達(dá)式,盡可能的 不匹配。這種匹配原則叫作 非貪婪 模式,也叫作 勉強(qiáng) 模式。如果少匹配就會(huì)導(dǎo)致整個(gè)表達(dá)式匹配失敗的時(shí)候,與貪婪模式類(lèi)似,非貪婪模式會(huì)最小限度的再匹配一些,以使整個(gè)表達(dá)式匹配成功。舉例如下,針對(duì)文本 dxxxdxxxd 舉例:表達(dá)式匹配結(jié)果(d)(\w+?)\w+? 將盡可能少的匹配第一個(gè) d 之后的字符,結(jié)果是:\w+? 只匹配了一個(gè) x(d)(\w+?)(d)為了讓整個(gè)表達(dá)式匹配成功,\w+? 不得不匹配 xxx 才可以讓后邊的 d 匹配,從而使整個(gè)表達(dá)式匹配成功。因此,結(jié)果是:\w+? 匹配 xxx 更多的情況,舉例如下: 舉例1:表達(dá)式 td(.*)/td 與字符串 tdpaa/p/td tdpbb/p/td 匹配時(shí),匹配的結(jié)果是:成功;匹配到的內(nèi)容是 tdpaa/p/td tdpbb/p/td 整個(gè)字符串, 表達(dá)式中的 /td 將與字符串中最后一個(gè) /td 匹配。 舉例2:相比之下,表達(dá)式 td(.*?)/td 匹配舉例1中同樣的字符串時(shí),將只得到 tdpaa/p/td, 再次匹配下一個(gè)時(shí),可以得到第二個(gè) tdpbb/p/td。 反向引用 \1, \2... 表達(dá)式在匹配時(shí),表達(dá)式引擎會(huì)將小括號(hào) ( ) 包含的表達(dá)式所匹配到的字符串記錄下來(lái)。在獲取匹配結(jié)果的時(shí)候,小括號(hào)包含的表達(dá)式所匹配到的字符串可以單獨(dú)獲取。這一點(diǎn),在前面的舉例中,已經(jīng)多次展示了。在實(shí)際應(yīng)用場(chǎng)合中,當(dāng)用某種邊界來(lái)查找,而所要獲取的內(nèi)容又不包含邊界時(shí),必須使用小括號(hào)來(lái)指定所要的范圍。比如前面的 td(.*?)/td。 其實(shí),小括號(hào)包含的表達(dá)式所匹配到的字符串 不僅是在匹配結(jié)束后才可以使用,在匹配過(guò)程中也可以使用。表達(dá)式后邊的部分,可以引用前面 括號(hào)內(nèi)的子匹配已經(jīng)匹配到的字符串。引用方法是 \ 加上一個(gè)數(shù)字。\1 引用第1對(duì)括號(hào)內(nèi)匹配到的字符串,\2 引用第2對(duì)括號(hào)內(nèi)匹配到的字符串……以此類(lèi)推,如果一對(duì)括號(hào)內(nèi)包含另一對(duì)括號(hào),則外層的括號(hào)先排序號(hào)。換句話(huà)說(shuō),哪一對(duì)的左括號(hào) ( 在前,那這一對(duì)就先排序號(hào)。 舉例如下: 舉例1:表達(dá)式 (39。|)(.*?)(\1) 在匹配 39。Hello39。, World 時(shí),匹配結(jié)果是:成功;匹配到的內(nèi)容是: 3
點(diǎn)擊復(fù)制文檔內(nèi)容
醫(yī)療健康相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1