亚洲综合原千岁中文字幕_国产精品99久久久久久久vr_无码人妻aⅴ一区二区三区浪潮_成人h动漫精品一区二区三

主頁 > 知識庫 > 正則表達式之捕獲組/非捕獲組介紹

正則表達式之捕獲組/非捕獲組介紹

熱門標簽:上海銷售電銷機器人軟件 惠安地圖標注 自己做的電銷機器人 淄博市張店區地圖標注 遼寧秒客來電話機器人 哈爾濱公司外呼系統代理 山東外呼系統聯系方式 地圖標注店鋪地圖標注酒店 浙江營銷外呼系統有哪些
捕獲組
語法:

字符 

描述

示例

(pattern)

匹配pattern并捕獲結果,自動設置組號。

 (abc)+d

匹配abcd或者abcabcd

(?name>pattern)

(?'name'pattern)

匹配pattern并捕獲結果,設置name為組名。

 

\num

對捕獲組的反向引用。其中 num 是一個正整數。

(\w)(\w)\2\1

匹配abba

\k name >

\k' name '

對命名捕獲組的反向引用。其中 name 是捕獲組名。

(?group>\w)abc\kgroup>

匹配xabcx

使用小括號指定一個子表達式后,匹配這個子表達式的文本(也就是此分組捕獲的內容)可以在表達式或其它程序中作進一步的處理。默認情況下,每個捕獲組會自動擁有一個組號,規則是:從左向右,以分組的左括號為標志,第一個出現的分組的組號為1,第二個為2,以此類推。
例如:
(\d{4})-(\d{2}-(\d{2}))
1 1 2 3 32
以下是用程序處理捕獲組的示例,對一個Url地址進行解析,并顯示所有捕獲組。
可以看到按順序設置的捕獲組號。
Regex.Match方法
復制代碼 代碼如下:

using System.Text.RegularExpressions;
namespace Wuhong.Test
{
class Program
{
static void Main(string[] args)
{
//目標字符串
string source = "http://reg-test-server:8080/download/file1.html# ";
//正則式
string regex = @"(\w+):\/\/([^/:]+)(:\d+)?([^# :]*)";
Regex regUrl = new Regex(regex);
//匹配正則表達式
Match m = regUrl.Match(source);
Console.WriteLine(m.Success);
if (m.Success)
{
//捕獲組存放在Match.Groups集合中,索引值從1開始,索引0處為匹配的整個字符串值
//按“組號 : 捕獲內容”的格式顯示
for (int i = 0; i m.Groups.Count; i++)
{
Console.WriteLine(string.Format("{0} : {1}", i, m.Groups[i]));
}
}
Console.ReadLine();
}
}
}

也可以自己指定子表達式的組名。這樣在表達式或程序中可以直接引用組名,當然也可以繼續使用組號。但如果正則表達式中同時存在普通捕獲組和命名捕獲組,那么捕獲組的編號就要特別注意,編號的規則是先對普通捕獲組進行編號,再對命名捕獲組進行編號。
例如:
(\d{4})-(?date>\d{2}-(\d{2}))
1 1 3 2 23

下面在程序中處理命名捕獲組,顯示混合規則生成的組號,并利用捕獲組的內容對源字符串進行替換。
可以看到先對普通捕獲組進行編號,再對命名捕獲組編號。
Regex.Replace方法
復制代碼 代碼如下:

using System.Text.RegularExpressions;
namespace Wuhong.Test
{
class Program
{
static void Main(string[] args)
{
//目標字符串
string source = "http://reg-test-server:8080/download/file1.html# ";
//正則式,對其中兩個分組命名
string regex = @"(\w+):\/\/(?server>[^/:]+)(?port>:\d+)?([^# :]*)";
Regex regUrl = new Regex(regex);
//匹配正則表達式
Match m = regUrl.Match(source);
Console.WriteLine(m.Success);
if (m.Success)
{
//捕獲組存放在Match.Groups集合中,索引值從1開始,索引0處為匹配的整個字符串值
//按“組號 : 捕獲內容”的格式顯示
for (int i = 0; i m.Groups.Count; i++)
{
Console.WriteLine(string.Format("{0} : {1}", i, m.Groups[i]));
}
}
//替換字符串
//“$組號”引用捕獲組的內容。
//需要特別注意的是“$組號”后不能跟數字形式的字符串,如果出現此情況,需要使用命名捕獲組,引用格式“${組名}”
string replacement = string.Format("$1://{0}{1}$2", "new-reg-test-server", "");
string result = regUrl.Replace(source, replacement);
Console.WriteLine(result);
Console.ReadLine();
}
}
}


非捕獲組
語法:

字符 

描述

示例

(?:pattern)

匹配pattern,但不捕獲匹配結果。

'industr(?:y|ies)

匹配'industry'或'industries'。

(?=pattern)

零寬度正向預查,不捕獲匹配結果。

'Windows (?=95|98|NT|2000)'

匹配 "Windows2000" 中的 "Windows"

不匹配 "Windows3.1" 中的 "Windows"。

(?!pattern)

零寬度負向預查,不捕獲匹配結果。

'Windows (?!95|98|NT|2000)'

匹配 "Windows3.1" 中的 "Windows"

不匹配 "Windows2000" 中的 "Windows"。

(?=pattern)

零寬度正向回查,不捕獲匹配結果。

'2000 (?=Office|Word|Excel)'

匹配 " Office2000" 中的 "2000"

不匹配 "Windows2000" 中的 "2000"。

(?!pattern)

零寬度負向回查,不捕獲匹配結果。

'2000 (?!Office|Word|Excel)'

匹配 " Windows2000" 中的 "2000"

不匹配 " Office2000" 中的 "2000"。


非捕獲組只匹配結果,但不捕獲結果,也不會分配組號,當然也不能在表達式和程序中做進一步處理。
首先(?:pattern)與(pattern)不同之處只是在于不捕獲結果。
接下來的四個非捕獲組用于匹配pattern(或者不匹配pattern)位置之前(或之后)的內容。匹配的結果不包括pattern。
例如:
(?=(\w+)>).*(?=\/\1>)匹配不包含屬性的簡單HTML標簽內的內容。如:div>hello/div>之中的hello,匹配結果不包括前綴div>和后綴/div>。
下面是程序中非捕獲組的示例,用來提取郵編。
可以看到反向回查和反向預查都沒有被捕獲。
Regex.Matches方法
復制代碼 代碼如下:

using System.Text.RegularExpressions;
namespace Wuhong.Test
{
class Program
{
static void Main(string[] args)
{
//目標字符串
string source = "有6組數字:010001,100,21000,310000,4100011,510002,把郵編挑出來。";
//正則式
string regex = @"(?!\d)([1-9]\d{5})(?!\d)";
Regex regUrl = new Regex(regex);
//獲取所有匹配
MatchCollection mList = regUrl.Matches(source);
for (int j = 0; j mList.Count; j++)
{
//顯示每個分組,可以看到每個分組都只有組號為1的項,反向回查和反向預查沒有被捕獲
for (int i = 0; i mList[j].Groups.Count; i++)
{
Console.WriteLine(string.Format("{0} : {1} : {2}", j, i, mList[j].Groups[i]));
}
}
Console.ReadLine();
}
}
}


注釋
語法:

字符

描述

示例

(?#comment)

comment是注釋,不對正則表達式的處理產生任何影響

2[0-4]\d(?#200-249)|25[0-5](?#250-255)|1?\d\d?(?#0-199)

匹配0-255的整數

這個不解釋了。

您可能感興趣的文章:
  • 正則表達式、分組、子匹配(子模式)、非捕獲子匹配(子模式)
  • JS正則表達式之非捕獲分組用法實例分析
  • javascript正則表達式中分組詳解
  • JS正則表達式獲取分組內容的方法詳解
  • JavaScript正則表達式的分組匹配詳解
  • 淺談JavaScript正則表達式-非捕獲性分組

標簽:綿陽 長沙 泰州 重慶 無錫 宣城 銅川 西安

巨人網絡通訊聲明:本文標題《正則表達式之捕獲組/非捕獲組介紹》,本文關鍵詞  正則,表達式,之,捕獲,組,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《正則表達式之捕獲組/非捕獲組介紹》相關的同類信息!
  • 本頁收集關于正則表達式之捕獲組/非捕獲組介紹的相關信息資訊供網民參考!
  • 推薦文章
    精品久久久久久综合网| 青青青草视频在线观看| 四虎影视久久久| 99久久视频| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 欧美日本二区| 麻豆系列 在线视频| 日韩免费在线视频| 亚欧成人乱码一区二区| 青青久久精品| 国产a视频| 精品毛片视频| 亚飞与亚基在线观看| 黄视频网站在线观看| 国产91精品一区| 亚洲女初尝黑人巨高清在线观看| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 国产麻豆精品免费视频| 国产极品精频在线观看| 日本伦理网站| 国产美女在线一区二区三区| 久久精品人人做人人爽97| 99久久精品费精品国产一区二区| 亚欧成人乱码一区二区| 青青久久国产成人免费网站| 可以免费看毛片的网站| 日本在线不卡视频| 国产韩国精品一区二区三区| 久久久久久久久综合影视网| 久久99爰这里有精品国产| 九九九网站| 四虎影视久久久免费| 沈樵在线观看福利| 国产视频一区二区在线观看| 999精品在线| 日韩一级黄色大片| 精品视频一区二区三区| 999精品视频在线| 精品久久久久久免费影院| 日韩中文字幕在线播放| 精品视频一区二区| 国产成人欧美一区二区三区的| 香蕉视频亚洲一级| 日韩免费在线视频| 久久精品欧美一区二区| 欧美大片一区| 精品久久久久久免费影院| 美女免费毛片| 韩国三级香港三级日本三级la | 亚久久伊人精品青青草原2020| 国产精品免费久久| 日韩女人做爰大片| 国产91丝袜高跟系列| 国产不卡高清| 亚洲天堂免费| 韩国三级视频网站| 日韩av片免费播放| 国产亚洲免费观看| 亚洲天堂在线播放| 国产91精品系列在线观看| 韩国三级视频网站| 99久久视频| 99久久精品国产高清一区二区| 精品视频一区二区| 国产一区二区福利久久| 天天色色色| 久久福利影视| 亚久久伊人精品青青草原2020| 欧美日本免费| 久久精品人人做人人爽97| 四虎影视久久| 国产综合成人观看在线| 欧美大片毛片aaa免费看| 国产视频一区二区在线播放| 精品久久久久久影院免费| 久久福利影视| 一级女性全黄久久生活片| a级毛片免费观看网站| 九九久久99综合一区二区| a级毛片免费全部播放| 欧美激情一区二区三区视频| 国产麻豆精品hdvideoss| 日日夜夜婷婷| 国产伦精品一区三区视频| 免费的黄视频| 日本在线www| 成人免费一级纶理片| 国产麻豆精品hdvideoss| 999精品在线| 精品国产一区二区三区精东影业| 在线观看成人网| 亚洲天堂在线播放| 二级特黄绝大片免费视频大片| 国产一区二区精品在线观看| 日韩中文字幕一区| 日韩一级黄色片| 日韩在线观看视频黄| 国产不卡在线观看视频| 欧美电影免费看大全| 毛片成人永久免费视频| 亚洲 国产精品 日韩| 国产不卡在线看| 国产高清在线精品一区二区| 四虎影视库| 日韩字幕在线| 国产麻豆精品高清在线播放| 91麻豆精品国产高清在线| 国产伦精品一区二区三区无广告 | 国产高清视频免费观看| 国产原创视频在线| 欧美日本免费| 美国一区二区三区| 欧美激情一区二区三区在线| 久久国产一久久高清| 国产91精品一区| 国产成+人+综合+亚洲不卡| 精品视频在线观看免费| 在线观看成人网 | 久久精品人人做人人爽97| 国产视频一区二区在线播放| 91麻豆精品国产高清在线| 99色视频| 亚洲wwwwww| 青青久久国产成人免费网站| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 日韩一级黄色| 精品国产一区二区三区久久久狼| 亚洲精品中文一区不卡| 亚欧乱色一区二区三区| 九九九国产| 日本伦理片网站| 91麻豆精品国产片在线观看| 九九久久99综合一区二区| 国产极品白嫩美女在线观看看| 欧美激情一区二区三区视频 | 国产成人欧美一区二区三区的| 国产国语在线播放视频| 久久精品欧美一区二区| 色综合久久久久综合体桃花网| 国产麻豆精品hdvideoss| 99久久精品国产国产毛片| 国产韩国精品一区二区三区| 午夜在线亚洲男人午在线| 精品视频免费观看| 色综合久久天天综合观看| 青青久久网| 国产91丝袜高跟系列| 国产不卡精品一区二区三区| 国产精品1024永久免费视频| 国产视频一区在线| 欧美α片无限看在线观看免费| 深夜做爰性大片中文| 久久国产影院| 欧美激情一区二区三区视频高清 | 99久久精品国产麻豆| 日本久久久久久久 97久久精品一区二区三区 狠狠色噜噜狠狠狠狠97 日日干综合 五月天婷婷在线观看高清 九色福利视频 | 亚欧乱色一区二区三区| 999精品在线| 国产韩国精品一区二区三区| 欧美一级视频免费| 国产高清在线精品一区二区| 国产成人啪精品| 日韩专区一区| 美女免费毛片| 一本高清在线| 欧美另类videosbestsex高清 | 国产精品免费久久| 欧美一区二区三区在线观看| 九九干| 97视频免费在线观看| 日本在线www| 天堂网中文在线| 日韩专区第一页| 国产一区二区精品尤物| 日韩av片免费播放| 亚飞与亚基在线观看| 中文字幕一区二区三区 精品| 欧美一级视频免费| 韩国毛片| 国产91精品露脸国语对白| 国产91精品一区二区| 成人a大片在线观看| 日韩专区第一页| 日韩中文字幕一区| 天天做日日爱| 九九精品影院| 日日爽天天| 亚洲 国产精品 日韩| 亚洲天堂免费| 天天色色色| 久久国产精品只做精品| 91麻豆爱豆果冻天美星空| 亚欧视频在线| 超级乱淫伦动漫| 欧美a级v片不卡在线观看| 九九久久国产精品| 韩国三级香港三级日本三级| 成人高清视频在线观看| 天天做日日爱夜夜爽| 国产网站免费|