濮阳杆衣贸易有限公司

主頁(yè) > 知識(shí)庫(kù) > 正則 捕獲組(capture group)

正則 捕獲組(capture group)

熱門標(biāo)簽:百音電話機(jī)器人 自制電銷機(jī)器人 錫林郭勒盟地圖標(biāo)注位置 電銷機(jī)器人公司簡(jiǎn)介 高德地圖標(biāo)注短信簽約 知名的電話機(jī)器人 湖南企業(yè)智能外呼系統(tǒng)供應(yīng)商 RO地圖標(biāo)注app 福州工作銷售電話機(jī)器人
捕獲組有兩種形式
一種是普通的捕獲組,不產(chǎn)生歧義的情況下,后面簡(jiǎn)稱捕獲組,語(yǔ)法規(guī)則:(expression);
另一種是命名捕獲組,語(yǔ)法規(guī)則:(?name>expression)或者(?'name'expression),這兩種寫法是等價(jià)的。
 
1、編號(hào)規(guī)則
如果沒有顯式為捕獲組命名,即沒有使用命名捕獲組,那么需要按數(shù)字順序來(lái)訪問所有捕獲組
在只有普通捕獲組的情況下,捕獲組的編號(hào)是按照“(”出現(xiàn)的順序,從左到右編號(hào)的 
 
(\d{4})-(\d{2}-(\d\d))
1        1 2          3    3 2
 
上面的正則表達(dá)式可以用來(lái)匹配格式為yyyy-MM-dd的日期,為了在下表中得以區(qū)分,采用了\d{2}和\d\d兩種寫法
還有一個(gè)默認(rèn)編號(hào)為0的組,表示的是正則表達(dá)式的整體
用以上正則表達(dá)式匹配字符串:2008-12-31
匹配結(jié)果為:
編號(hào) 命名 捕獲組 匹配內(nèi)容
0   (\d{4})-(\d{2}-(\d\d)) 2008-12-31
1   (\d{4}) 2008
2   (\d{2}-(\d\d)) 12-31
3   (\d\d) 31
 
如果對(duì)組進(jìn)行了顯式命名,即命名捕獲組,那么捕獲的內(nèi)容可以通過組名稱來(lái)引用
但是如果正則表達(dá)式中既使用了普通捕獲組,也使用了命名捕獲組,那么捕獲組的編號(hào)就要特別注意,編號(hào)的規(guī)則是先對(duì)普通捕獲組進(jìn)行編號(hào),再對(duì)命名捕獲組進(jìn)行編號(hào)
 
(\d{4})-(?date>\d{2}-(\d\d))
1        1 3                       2     23
 
用以上正則表達(dá)式匹配字符串:2008-12-31
匹配結(jié)果為:
編號(hào) 命名 捕獲組 匹配內(nèi)容
0   (\d{4})-(\d{2}-(\d\d)) 2008-12-31
1   (\d{4}) 2008
2   (\d\d) 31
3 date (?date>\d{2}-(\d\d)) 12-31
 
 
2、捕獲組的引用
對(duì)捕獲組的引用一般有以下幾種
a) 正則表達(dá)式中,對(duì)前面捕獲組捕獲的內(nèi)容進(jìn)行引用,稱為反向引用
b) 正則表達(dá)式中,(?(表達(dá)式)true|false)的條件表達(dá)式
c) 在程序中,對(duì)捕獲組捕獲內(nèi)容的引用
 
反向引用
對(duì)于普通捕獲組的引用,語(yǔ)法規(guī)則為:\knum>,通常簡(jiǎn)寫為\num,其中num是十進(jìn)制的數(shù)字,即捕獲組的編號(hào)
對(duì)于命名捕獲組的引用,語(yǔ)法規(guī)則為:\kname>或者\(yùn)k'name'

標(biāo)簽:茂名 昆明 秦皇島 吉林 河北 玉林 西寧 怒江

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《正則 捕獲組(capture group)》,本文關(guān)鍵詞  正則,捕獲,組,capture,group,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《正則 捕獲組(capture group)》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于正則 捕獲組(capture group)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章

    上一篇:正則基礎(chǔ)之 小數(shù)點(diǎn)

    下一篇:Dreamweaver 正則替換(返回調(diào)用值)

    乐业县| 邵武市| 松江区| 武功县| 汤阴县| 始兴县| 涟源市| 贵州省| 楚雄市| 察隅县| 岑溪市| 南城县| 宁海县| 集贤县| 安塞县| 京山县| 杭锦旗| 桃园市| 钦州市| 灵丘县| 长子县| 天津市| 科技| 菏泽市| 肃南| 镇赉县| 石林| 乌兰县| 济南市| 天柱县| 大关县| 靖西县| 瑞丽市| 澄城县| 阳山县| 来安县| 福泉市| 井陉县| 宣化县| 泰安市| 清丰县|