1. 程式人生 > >PHP 正則表達式(PCRE)

PHP 正則表達式(PCRE)

nal php rep uno 則表達式 異常 spl sin html

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

PHP 正則表達式(PCRE)