一、正則表達式入門-20161124

1、可選元素,元字符[?]代表可選項,把它加在一個字符後面,表示此處容許出現前面的字符,不過它的出現並非匹配成功的必要條件。例如如果要匹配出colorcolour,表達式爲(colou?r)July fourth,其中July可以寫作Jul,而日期fourth可以寫4th或者4,我們可以用(July|Jul).(fourth|4th|4),如果採用可選元素可以寫爲(July?).(fourth|4th|4)

2、其他量詞:重複出現,[+][*]的作用與問號類似。元字符[+]表示之前緊鄰的元素出現一次或者多次;而[*]表示之前緊鄰的元素出現任意多次,或者不出現。問號、加號、星號這個3個元字符統稱爲量詞,他們限定了所作用元素的匹配次數。例如:[*?]匹配一個可能出現的空格,[.*]可以匹配任意多個空格,可以不是空格,沒有要求是必須。

+:出現一次及無數次,至少一次

*出現無數次,也可以不出現,任意次數均可

?可以不出現,也可以只出現一次,單次可選

3、規定重現次數的範圍:區間,使用元字符序列來自定義重現次數的區間[...{min,max}]

4、括號及反向引用,括號目前的兩種用途(現在多選項的範圍,將若干字符組合爲一個單元,受量詞作用),括號還有另外一種不常見用法(能夠記住他們包含的子表達式匹配的文本)。

如果我們要提取[\<the.+ the\>]可以寫爲[\<([A-Za-z]+).+\1\>]其中[\1]能匹配到[the]並記憶該子表達式匹配的文本。

5、轉義:[.]元字符本身可以匹配任何字符,包括空格。真正匹配文本中點號的元序列應該是反斜線加點的組合:[ega\.att\.com],我們把這種叫做“轉義的點號”或者“轉義的句號”,反斜線我們稱爲“轉義符”,作用是使反斜線後的元字符失去特殊含義成普通字符


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章