PHP 正則表示式(PCRE)
PHP 正則表示式(PCRE)
正則表示式(regular expression)描述了一種字串匹配的模式,可以用來檢查一個串是否含有某種子串、將匹配的子串做替換或者從某個串中取出符合某個條件的子串等。
更多正則表示式的內容可參考我們的:正則表示式 - 教程。
PHP 中我們可以使用 PCRE 擴充套件來匹配字串的模式。
PCRE 函式
函式 | 描述 |
---|---|
preg_filter | 執行一個正則表示式搜尋和替換 |
preg_grep | 返回匹配模式的陣列條目 |
preg_last_error | 返回最後一個PCRE正則執行產生的錯誤程式碼 |
preg_match_all | 執行一個全域性正則表示式匹配 |
preg_match | 執行一個正則表示式匹配 |
preg_quote | 轉義正則表示式字元 |
preg_replace_callback_array | 執行一個正則表示式搜尋並且使用一個回撥進行替換 |
preg_replace_callback | 執行一個正則表示式搜尋並且使用一個回撥進行替換 |
preg_replace | 執行一個正則表示式的搜尋和替換 |
preg_split | 通過一個正則表示式分隔字串 |
PREG 常量
常量 | 描述 | 自哪個版本起 |
---|---|---|
PREG_PATTERN_ORDER |
結果按照"規則"排序,僅用於preg_match_all(), 即$matches[0]是完整規則的匹配結果, $matches[1]是第一個子組匹配的結果,等等。 | since |
PREG_SET_ORDER |
結果按照"集合"排序,僅用於preg_match_all(), 即$matches[0]儲存第一次匹配結果的所有結果(包含子組)資訊, $matches[1]儲存第二次的結果資訊,等等。 | |
PREG_OFFSET_CAPTURE |
檢視PREG_SPLIT_OFFSET_CAPTURE 的描述。
|
4.3.0 |
PREG_SPLIT_NO_EMPTY |
這個標記告訴 preg_split() 進返回非空部分。 | |
PREG_SPLIT_DELIM_CAPTURE |
這個標記告訴 preg_split() 同時捕獲括號表示式匹配到的內容。 | 4.0.5 |
PREG_SPLIT_OFFSET_CAPTURE |
如果設定了這個標記,每次出現的匹配子串的偏移量也會被返回。注意,這會改變返回陣列中的值, 每個元素都是由匹配子串作為第0個元素,它相對目標字串的偏移量作為第1個元素的陣列。這個 標記只能用於 preg_split()。 | 4.3.0 |
PREG_NO_ERROR |
沒有匹配錯誤時呼叫 preg_last_error() 返回。 | 5.2.0 |
PREG_INTERNAL_ERROR |
如果有PCRE內部錯誤時呼叫 preg_last_error() 返回。 | 5.2.0 |
PREG_BACKTRACK_LIMIT_ERROR |
如果呼叫回溯限制超出,呼叫preg_last_error()時返回。 | 5.2.0 |
PREG_RECURSION_LIMIT_ERROR |
如果遞迴限制超出,呼叫preg_last_error()時返回。 | 5.2.0 |
PREG_BAD_UTF8_ERROR |
如果最後一個錯誤時由於異常的utf-8資料(僅在執行在 UTF-8 模式正則表示式下可用)。 導致的,呼叫preg_last_error()返回。 | 5.2.0 |
PREG_BAD_UTF8_OFFSET_ERROR |
如果偏移量與合法的urf-8程式碼不匹配(僅在執行在 UTF-8 模式正則表示式下可用)。 呼叫preg_last_error()返回。 | 5.3.0 |
PCRE_VERSION |
PCRE版本號和釋出日期(比如: "7.0 18-Dec-2006")。 | 5.2.4 |