C 正規表示式(通俗易懂)

2022-01-23 13:58:38 字數 811 閱讀 2183

正規表示式有多重要,話不多說,直接入正題把。

首先我們來說說元字元。

1、. 點號代表除了換行意外的任意單個字元

例如 a.b  說明a和b之間只能有任意乙個字元。

2、代表從這裡面取出任意乙個字元

例如 a[xyz]b 符合的有 axb ayb azb

3、 ^:這個是取反

例如 a[^xyz]b 自己想想

下面來說說常見的限定符

1、*:表示可以出現零次或多次,*表示可以有也沒有

2、+ 表示至少出現一次,可以出現多次

3、?表示出現一次或零次

4、必須出現n次

5、至少出現n次

6、至少n次,最多m次

下面來說說:正規表示式的提取組問題,我們都都知道括號有改變優先順序的作用,比如

z|hello 結果,是啥,(z|h)ello。

括號還有乙個作用就是提取組的作用。

最經常看到的需求就是把網頁裡面的郵箱163,sohu,gmail,qq分組來做

這裡就是提取組的用法例項之一

再下來簡單的說說:正規表示式的貪婪模式把。

string str="啊哈哈hello world嘎嘎"

string regstr="[a-za-z]+";

//當正規表示式的式進行提取的時候,如果乙個字元也能匹配,多個字元匹配,這時,會按照使用最多字元來匹配。

如何終結貪婪模式呢

?跟在限定符後面

當你終結貪婪模式的時候,會按照最小的來匹配。

正規表示式應用非常廣,主要是因為它在做某些操作的時候,比較方便,效率呢,不是正規表示式的優勢。

通俗易懂正規表示式小結

普通字元 字母,數字,漢字,下劃線以及沒有特殊定義的標點符號,都是普通字元,表示式中的普通字元,在匹配乙個字串的時候,匹配與之對應的乙個字元 轉義字元 n換行 t製表符 字元本身 等等 表示匹配,等等 d任意0 9中乙個數字,注意只匹配乙個字元,大寫表示相反,如 d的匹配全部非數字字元 w匹配大小寫...

Lambda表示式全面了解 通俗易懂

lambda是乙個表示式,也可以說它是乙個匿名函式,然而在使用它或是閱讀lambda 的時候,卻顯得並不那麼容易,因為它匿名,刪減了一些必要的說明資訊 比如方法名 所有的lambda表示式都是用新的lambda運算子 可以叫他,轉到 或者 成為 運算子將表示式分為兩部分,左邊指定輸入引數,右邊是為計...

正規表示式通俗入門

正規表示式,用於檢索符合某些規則的文字的邏輯。用好了可以在 編寫中事半功倍,也能裝逼。話不多說,進入正題!基礎 1.元字元,構造正規表示式的一種基本元素 例如 匹配三位數字 string regex d d d 2.重複限定符 3.轉義 如果要匹配的字元跟表示式某些語法相同,則使用反斜槓轉義。高階 ...