如何搞懂正規表示式,我來教你

2021-10-25 22:32:47 字數 1631 閱讀 2877

1.什麼是正規表示式

簡單來說正規表示式就是一種去驗證你需要填寫的目標字串是否滿足一種特定格式的約束,你可以以此來限制目標字串。

正規表示式的使用,可以通過簡單的辦法來實現強大的功能。下面先給出乙個簡單的示例:

^ 為匹配輸入字串的開始位置。

[0-9]+匹配多個數字, [0-9] 匹配單個數字,+ 匹配乙個或者多個。

abc匹配字

母abc

並以ab

c結尾,

匹配字母 abc 並以 abc 結尾,

匹配字母ab

c並以a

bc結尾

, 為匹配輸入字串的結束位置。

我們在寫使用者註冊表單時,只允許使用者名稱包含字元、數字、下劃線和連線字元(-),並設定使用者名稱的長度,我們就可以使用以下正規表示式來設定。

對於常見的字母和數字,應該大家都了解,例如a-z,a-z等。

對於特殊符號的要求,一般在前面加上,例如滿足$,就直接使用$就可以了。

限定符:

對於特定字元也是可以使用限定符來控制的,例如,m 和 n 均為非負整數,其中n <= m。最少匹配 n 次且最多匹配 m 次。例如,「o」 將匹配 「fooooood」 中的前三個 o。『o』 等價於 『o?』。請注意在逗號和兩個數之間不能有空格。一般就能滿足我們對長度和次數的限制問題。

匹配規則:

匹配規則就是對於正規表示式和字串之間匹配的一些條件

例如^once就是匹配以once開頭的字串,bucketkatex parse error: can't use function '\.' in math mode at position 262: …//匹配所有的數字 [0-9\̲.̲\-] //匹配所有的數字,句…則匹配比如"z2"、「t6"或"g7」,但不匹配"ab2"、「r2d3」 或"b52"。

確定重複出現

到現在為止,你已經知道如何去匹配乙個字母或數字,但更多的情況下,可能要匹配乙個單詞或一組數字。乙個單詞有若干個字母組成,一組數字有若干個單數組成。跟在字元或字元簇後面的花括號({})用來確定前面的內容的重複出現的次數。

例如^a就表示

aa,a

aa或a

aaa,

存在限定

出現次數

的。[a

−za−

z]就表示aa,aaa或aaaa,存在限定出現次數的。^[a-za-z_]

就表示aa,

aaa或

aaaa

,存在限

定出現次

數的。[

a−za

−z]​

而對於這種,就適用於所有的字母和下劃線,也是比較常用的方式。

總結

以上就是我對正規表示式的總結和理解,第一次寫部落格,寫的不好,希望大家能批評指正,也希望能幫到正在學習路上的小夥伴們,大家一起努力,共同進步!!!!

我的正規表示式

1 應用例項 將字串中的 n 替換為 乙個是char,乙個是string,一般方法 replace 顯然不行,正在鬱悶,難道要用陣列迴圈?想到了正規表示式,哈哈哈哈,一陣淫笑。public static system.string replace system.string input system...

我的正規表示式

摘自 1 ba w b匹配以字母a開頭的單詞 先是某個單詞開始處 b 然後是字母a,然後是任意數量的字母或數字 w 最後是單詞結束處 b 2 d 匹配1個或更多連續的數字 3 b w b 匹配剛好6個字元的單詞。4 d 匹配有5到12個字元的qq 匹配原理,從左至右,匹配成功之後就不會往後匹配 1 ...

正規表示式 正規表示式 總結

非負整數 d 正整數 0 9 1 9 0 9 非正整數 d 0 負整數 0 9 1 9 0 9 整數 d 非負浮點數 d d 正浮點數 0 9 0 9 1 9 0 9 0 9 1 9 0 9 0 9 0 9 1 9 0 9 非正浮點數 d d 0 0 負浮點數 正浮點數正則式 英文本串 a za z...