1.界定符 / 例:/[a]/ 匹配a
2.原子 unicode編碼中最小的單元符號,即乙個字元。原子又分為可見原子,和不可見原子。可見原子是指unicode編碼表中可見的字元。不可見原子像回車,空格,製表符之類的
3.元字元
| 匹配兩個或則多個分支選擇,相當於邏輯判斷中的或者 例:/[a|v|b]/ 匹配a或者v或者b
匹配中括號中的任意乙個原子 例子: /[a]/ 匹配a這個原子
[^] 匹配除了中括號中的原子之外的任意字元 例子:/[^a]/ 匹配除了a字元以外的任意字元
3.原子的集合
. 點號是匹配除了換行符以為的任意字元
\d 匹配任意乙個十進位制的數字 例子:/\d/ 匹配任意乙個十進位制數字,和 /[0-9]/ 是一樣的效果
\d 匹配任意乙個非十進位制的數字 例子:/\d/ 匹配任意乙個不是十進位制的數字 和/[^0-9]/是一樣的效果
\s 匹配乙個不可見的原子 例子:/\s/ 匹配乙個不可見的原子 和 /\f\n\r\t\v/效果一樣
\f 匹配換頁字元。 \n 匹配換行字元。\r 匹配回車符字元。 \t 匹配製表字元。
\v 匹配垂直製表符。
\s 匹配乙個可見原子 例子:/\s/ 匹配乙個可見的原子 和 /^\f\n\r\t\v/效果一樣
\w 匹配任意乙個數字、字母或下劃線 例子: /\w/ 和 /a-za-z0-9_/ 效果一樣
\w 匹配任意乙個非數字、字元或下劃線 例子:/\w/ 和 /^a-za-z0-9_/ 效果一樣
4.量詞
匹配其前面的原子剛好出現n次 例子:/[a]/ 匹配a字元剛好出現了2的字串
匹配其前面的原子至少出現了n次
匹配其前面的原子至少出現n次,至多出現了m次
* 匹配0次或者1次或則多次其之前的原子,相當於的簡寫
+ 匹配1次或者多次其之前的原子,也就是至少出現一次,相當於
? 匹配0次或則1次,也就是要麼出現要麼不出現 ,相當於
5.邊界控制與模式單元:
^ 匹配字串的開始位置
$ 匹配字串結尾的位置
() 匹配其中的整體為乙個原子
6.修正模式
u/u 懶惰匹配/貪婪模式
i 忽略英文本母大小寫
x 忽略空白
s 讓元字元','匹配包括換行符在內的所有字元
一些常見正規表示式
貨幣: '/^\d+(\.\d+)?$/'
正整數: '/^\d+$/'
壓縮包: '/^\d$/'
整數: '/^[-\+]?\d+$/'
qq號碼:'/^\d$/'
手機號碼: '/^1(3|4|5|7|8)\d$/'
使用示例:
$pattern = "/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/";$subject = '[email protected]';
$data = preg_match($pattern, $subject
);echo
$data;
返回1代表成功,0代表失敗
php正規表示式詳解,PHP正規表示式使用詳解
操作符 描述 轉義符 圓括號和方括號 限定符 anymetacharacter 位置和順序 或 操作 全部符號解釋 字元 描述 將下乙個字元標記為乙個特殊字元 或乙個原義字元 或乙個 向後引用 或乙個八進位制轉義符。例如,n 匹配字元 n n 匹配乙個換行符。序列 匹配 而 則匹配 匹配輸入字串的開...
PHP使用正規表示式
正規表示式 regular expression 是一種文字模式,包括普通字元和特殊字元 元字元 正規表示式使用單個字串來描述 匹配一系列匹配某個句法規則的字串。通過正規表示式,可以 測試字串內的模式 資料驗證 替換文字 基於模式匹配從字串中提取子字串 正規表示式是基於文字的編輯器和搜尋工具中的乙個...
PHP正規表示式
php正規表示式的定義 用於描述字元排列和匹配模式的一種語法規則。它主要用於字串的模式分割 匹配 查詢及替換操作。php中的正則函式 php中有兩套正則函式,兩者功能差不多,分別為 一套是由pcre perl compatible regular expression 庫提供的。使用 preg 為字...