正規表示式 問號 冒號 使用

2021-10-08 07:45:46 字數 452 閱讀 9735

(?: pattern)是非捕獲型括號 匹配pattern,但不捕獲匹配結果。

(pattern )是捕獲型括號。 匹配pattern,匹配pattern並捕獲結果,自動獲取組號

(? pattern ) 匹配pattern, 匹配pattern並捕獲結果,設定name為組名

使用小括號指定乙個子表示式後,匹配這個子表示式的文字(也就是此分組捕獲的內容)可以在表示式或其它程式中作進一步的處理。預設情況下,每個捕獲組會自動擁有乙個組號,規則是:從左向右,以分組的左括號為標誌,第乙個出現的分組的組號為1,第二個為2,以此類推。

如果正規表示式中同時存在普通捕獲組和命名捕獲組,那麼捕獲組的編號就要特別注意,編號的規則是先對普通捕獲組進行編號,再對命名捕獲組進行編號。

為了避免括號太多使編號混亂,也為了避免無用的捕獲提高效率,在不需要捕獲只需要指定分組的地方就可以使用非捕獲型括號。問題裡的非捕獲型括號就是為此使用的。

正規表示式之 (問號)的使用

現在我們來匹配乙個html標籤,匹配table如下 s s table 或 s s table 以上兩個表示式,乙個加了 和乙個卻不加 那麼這有什麼區別呢?我們知道 在正規表示式裡是乙個萬用字元 匹配前面的子表示式零次或一次,或指明乙個非貪婪限定符。在這裡,通過測試,我們得出這樣的結論 在不加 的情...

使用正規表示式

如果原來沒有使用過正規表示式,那麼可能對這個術語和概念會不太熟悉。不過,它們並不是您想象的那麼新奇。請回想一下在硬碟上是如何查詢檔案的。您肯定會使用 和 字元來幫助查詢您正尋找的檔案。字元匹配檔名中的單個字元,而 則匹配乙個或多個字元。乙個如 data?dat 的模式可以找到下述檔案 data1.d...

使用正規表示式

本文節選自 並有稍微修正。使用正規表示式 您可以使用正規表示式做很多事情。在以下的列表中,您可以找到一些最普通 最常用的正規表示式的例子。表示文字串必須在一行的開頭。所以,當查詢行的開頭只為 hosts 的行,可以使用命令 grep ls hosts 代表了一行的結尾。所以,當查詢行的結尾只為 ho...