a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 編程 > Regex > 正文

詳解正則表達式問號的用法

2024-09-07 17:40:08
字體:
來源:轉載
供稿:網友

今天本文是小編將要為大家詳解正則表達式問號的用法介紹,相信很多小伙伴們都知道正則表達式問號,卻不知道如何使用它,那么我們現在就去了解了解吧。

原文符號

因為?在正則表達式中有特殊的含義,所以如果想匹配?本身,則需要轉義,/?

有無量詞

問號可以表示重復前面內容的0次或一次,也就是要么不出現,要么出現一次。

非貪婪匹配

貪婪匹配

在滿足匹配時,匹配盡可能長的字符串,默認情況下,采用貪婪匹配

string pattern1 = @"a.*c";  // greedy match Regex regex = new Regex(pattern1);regex.Match("abcabc"); // return "abcabc"

非貪婪匹配

在滿足匹配時,匹配盡可能短的字符串,使用?來表示非貪婪匹配

string pattern1 = @"a.*?c";  // non-greedy match Regex regex = new Regex(pattern1);regex.Match("abcabc"); // return "abc"

幾個常用的非貪婪匹配Pattern

*? 重復任意次,但盡可能少重復
+? 重復1次或更多次,但盡可能少重復
?? 重復0次或1次,但盡可能少重復
{n,m}? 重復n到m次,但盡可能少重復
{n,}? 重復n次以上,但盡可能少重復

不捕捉模式

如何關閉圓括號的捕獲能力?而只是用它來做分組,方法是在左括號的后邊加上:?,這里第一個圓括弧只是用來分組,而不會占用捕獲變量,所以$1的內容只能是steak或者burger,而永遠不可能是bronto。

while(<>){  if(/(?:bronto)(steak|burger)/){    print "Fred wants a $1/n" ;  }}

上文就是詳解正則表達式問號的用法,我們可以通過一些實例讓大家認識正則表達式,為大家解決更大難題。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 一本岛在线视频 | 在线观看国精产品二区1819 | 日韩中文字幕一区 | 国产成人精品国内自产拍免费看 | 日韩 欧美 激情 | 欧洲亚洲视频 | 国产精品中文字母 | 亚洲成人精选 | 成人黄色一级网站 | 国产欧美精品区一区二区三区 | 18成人在线观看 | 国产精品一区一区 | 能在线观看的黄色网址 | 免费黄色在线视频 | 91福利网站在线观看 | 日韩大片 | 欧美日视频 | 呦一呦二在线精品视频 | 在线观看国产视频 | 国产在线观看91一区二区三区 | 亚洲成人福利 | 亚洲免费在线观看 | 高清xxxx| 91在线免费视频 | www97影院| 久久9色| 成年免费视频黄网站在线观看 | 亚洲天堂久久 | 国产69精品久久久久观看黑料 | 日韩综合 | 欧美中文在线观看 | 国产 日韩 欧美 制服 另类 | 免费一级欧美在线观看视频 | 九九热九九 | 国产精品亚欧美一区二区 | 午夜激情免费 | 中文字幕一区二区在线观看 | 国产一区二区在线看 | 午夜精品一区二区三区在线 | 日本精品一区二区 | 亚洲精品久久久久久久久久久 |