首頁  >  文章  >  後端開發  >  PHP正規表示式之語法詳解

PHP正規表示式之語法詳解

小云云
小云云原創
2017-11-10 16:39:432064瀏覽

PHP正規表示式是指一個用來描述或符合一系列符合某個句法規則的字串的單一字串。
正規表示式是對字串運算的一種邏輯公式,就是用事先定義好的一些特定字元、及這些特定字元的組合,組成一個“規則字串”,這個“規則字串”用來表達對字串的一種過濾邏輯。

給定一個正規表示式和另一個字串,我們可以達到如下的目的:

1. 給定的字串是否符合正規表示式的過濾邏輯(稱作“匹配」);

2. 可以透過正規表示式,從字串中取得我們想要的特定部分。

一個正規表示式就是由普通字元(例如字元 a 到 z)以及特殊字元(稱為元字元)所組成的文字模式。此模式描述在尋找文字主體時待符合的一個或多個字串。正規表示式作為一個模板,將某個字元模式與所搜尋的字串進行比對。

引用

/ 

將下一個字元標記為一個特殊字元、或一個原義字元、或一個後向引用、或一個八進制轉義符。例如,'n' 匹配字元 "n"。 '/n' 符合一個換行符。序列'//' 匹配"/" 而"/(" 則匹配"("。 

#^ 

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

# $ 

符合輸入字串的結束位置。能符合"z" 以及"zoo"。 "zo" 以及"zoo",但不能符合"z"。 。

#n 是一個非負整數。 1,}' 等價於'o+'。均為非負整數,其中n <= m。 ' 等價於'o?'。 +, ?, {n}, {n,}, {n,m}) 後面時,匹配模式是非貪婪的。多的匹配所搜尋的字串。 n" 以外的任何單一字符。要匹配包括'/n' 在內的任何字符,請使用象'[./n]' 的模式。 


 

 (pattern)

 符合pattern 並取得此符合。字符,請使用'/(' 或'/)'。進行儲存以供以後使用。這在使用 "或" 字元 (|) 來組合一個模式的各個部分是很有用。例如, 'industr(?:y|ies) 就是一個比 'industry|industries' 更簡單的表達式。 

 (?=pattern) 

 正向預查,在任何符合 pattern 的字串開始處符合尋找字串。這是一個非獲取匹配,也就是說,該匹配不需要獲取供以後使用。例如, 'Windows (?=95|98|NT|2000)' 能符合 "Windows 2000" 中的 "Windows" ,但不能符合 "Windows 3.1" 中的 "Windows"。預查不消耗字符,也就是說,在一個匹配發生後,在最後一次匹配之後立即開始下一次匹配的搜索,而不是從包含預查的字符之後開始。 

(?!pattern) 

#

  負向預查,在任何不符合Negative lookahead matches the search string at any point where a string not matching pattern 的字串開始處匹配查找字串。這是一個非獲取匹配,也就是說,該匹配不需要獲取供以後使用。例如 'Windows (?!95|98|NT|2000)' 能符合 "Windows 3.1" 中的 "Windows",但不能符合 "Windows 2000" 中的 "Windows"。預查不消耗字符,也就是說,在一個匹配發生後,在最後一次匹配之後立即開始下一次匹配的搜索,而不是從包含預查的字符之後開始

總結:

以上就是PHP正規表示式的一些語法詳解。同時我們知道正規表示式的特點是:

1. 靈活性、邏輯性和功能性非常的強;

2. 可以迅速地用極簡單的方式達到字串的複雜控制。

3. 對於剛接觸的人來說,比較晦澀難懂。

相關推薦:

正規表示式的應用

PHP正規表示式中修飾符有哪些

php正規表示式教學:正規表示式從入門到精通

以上是PHP正規表示式之語法詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn