正規表示式中的 這三種括號一般有什麼區別

2021-09-02 02:54:03 字數 399 閱讀 2680

寫道

()這種括號,會分配儲存空間,可以用$1取得裡面的資料

用來自定義能夠匹配 '多種字元' 的表示式。比如[mike]匹配,m,i,k,e,這4個字母,這裡注意是單個字元不能匹配乙個單詞mike,如果要匹配乙個單詞可以這樣寫(mike),如果不需要分配儲存空間可以直接寫mike.

{}修飾匹配次數的符號。aa至少出現0次或最多1次,第二次出現則不匹配了aa至少出現2次或最多5次.

舉個栗子:

// 去除連續的重複wbr換行符

html = html.replaceall("()\\1+", "$1");

// 去除img標籤的alt屬性

html = html.replaceall("((?i)]*?)\\s+alt\\s*=\\s*\\s+","$1");

一般的正規表示式

數字 0 9 n位的數字 d 至少n位的數字 d m n位的數字 d 零和非零開頭的數字 0 1 9 0 9 有兩位小數的正實數 0 9 0 9 有1 3位小數的正實數 0 9 0 9 非零的正整數 1 9 0 9 非零的負整數 1 9 0 9 長度為3的字元 由26個英文本母組成的字串 a za ...

php正規表示式 ? 的三種少見用法

我們已經知道括號可以捕捉匹配上的字串,並將它們存入變數之中,如果只想用括號將某部分進行分組?考慮這樣的正規表示式 只希望其中一部分括號中所匹配的 內容被存入記憶體變數中。在下面的例子中,我們希望 bronto 是可選擇的,為了將它變成可選擇的,我們需要將它用括號括起來。接著,模式使用了乙個模 式可以...

正規表示式(三) 正規表示式中的重複

我們在之前知道了正規表示式元字元的概念,再結合上重複的概念,才能寫出來一些相對高階的正規表示式。因為在實際的正規表示式的使用過程中,我們肯定不是那麼簡單的只用元字元來進行一些簡單的匹配,一般情況下還需要配合上重複的概念才能從乙個很長很亂的字串中匹配出我們想要的東西。下面我們會從下面的幾個方面來進行正...