其實就是一些匹配字元的式子而已, 不過這個式子不只是ctrl + f 的完全匹配, 而是異常的靈活, 在各種奇葩要求的字元查詢要求上很有價值
正規表示式是分普通字元和元字元的, 就好像一般語言中分普通字元和轉移字元一樣;
其實就是一般的字元, 比如『a', 'b', 』我'
元字元就像轉移字元一樣不能直接匹配, 他們代表的是一些特殊的東西, 也是這些字元構成了正規表示式的框架(要是每個字元都用來匹配怎麼能成多功能的表示式)
這些都是元字元
. ^ $ * + ? { [ ] \ | ( )
注意,這些字元中是沒有雙引號和單引號的
現在我們乙個乙個開始講上面的字元:
這個就是 裡面的字元是乙個字符集, 只要滿足其中任意乙個都可以,
我最想強調的是 寫在這裡面的任意字元都是當做普通字元處理, 即使 裡面有元字元也是當普通字元處理的, 這個必須注意,
不過更值得注意的元字元 ^
, 這個字元很特殊, 如果將 ^ 作為 裡面的第乙個字元, 那麼他是當做元字元用的, 就是非的意思, 也就是補集的意思;
最重要的元字元, 在某些語言中作為轉移字元而用, 在這裡是作為普通字元和元字元的通道, 當然還有別的作用
當想匹配元字元的時候就在元字元前面加上反斜槓就可以取消了, 當然還有如下作用
\d 匹配任何十進位制數;它相當於類 [0-9]。\d 匹配任何非數字字元;它相當於類 [^0-9]。
\s 匹配任何空白字元;它相當於類 [ \t\n\r\f\v]。
\s 匹配任何非空白字元;它相當於類 [^ \t\n\r\f\v]。
\w 匹配任何字母數字字元;它相當於類 [a-za-z0-9_]。
\w 匹配任何非字母數字字元;它相當於類 [^a-za-z0-9_]。
當我想匹配多個一樣的字元或者一樣的字符集的時候我就可以用重複的作用了
重複字元有如下幾種
? 匹配0次或一次
+ 匹配一次及以上
* 匹配0次或多次
什麼是分組呢? 加入你想匹配乙個特定超連結, 那麼其中有乙個src的屬性, 怎麼把這個src的值取出來了, 那就是分組
分組就是用() 括起來, 那麼()裡面的就是乙個分組
那麼我們的表示式寫成 src=\"([^"]*) , 這個時候括號裡面就是一組了
正規表示式 1 正規表示式基礎
1.正規表示式基礎 正規表示式描述了一種字串匹配的模式,即可以使使用者通過一系列普通字元或特殊字元構建能夠明確描述文字字串的匹配模式,可以用來檢查某個字串是否含有某種子字串,將匹配的子字串做替換或者從某個字串中取出符合某個條件的子字串等。1.1 正規表示式的基本結構 乙個正規表示式就是由普通字元 如...
正規表示式基礎
限定符 d 匹配非負整數 正整數 0 0 9 1 9 0 9 匹配正整數 d 0 匹配非正整數 負整數 0 0 9 1 9 0 9 匹配負整數 d 匹配整數 d d 匹配非負浮點數 正浮點數 0 0 9 0 9 1 9 0 9 0 9 1 9 0 9 0 9 0 9 1 9 0 9 匹配正浮點數 d...
正規表示式基礎
元字元 描述 匹配任何單個字元。例如正規表示式r.t匹配這些字串 rat rut r t,但是不匹配root。匹配行結束符。例如正規表示式weasel 能夠匹配字串 he s a weasel 的末尾,但是不能匹配字串 they are a bunch of weasels.匹配一行的開始。例如正規...