界定符
用法:/[0-9]/,#[0-9]#
說明:表示正則表達式的開始和結束,具體的由解析器決定
告訴php解析器的開始結束
原子
- 可見原子 可見字符,一般直接使用可見字符即可,如果遇到文字,建議轉成unicode
- 不可見原子 空格(),換行(\n),制表符(\t),其他不可見符號
- 換行加縮進的匹配可以使用 (\n\t)
元字符
說明:1. 定義原子的篩選方式 2. 某一類原子歸類,并且給出縮寫,簡化正則
- | 匹配兩個或者多個分支
- [] 中括號內部的任意一個原子
- [^] 匹配除括號內部原子之外的任何字符
原子的篩選
先看第一種作用,進行原子的篩選[]|代表或者的關系,[^]代表非的關系
舉例:
[Dd]uang,(D|d)uang
![Uploading Paste_Image_706943.png . . .]
既然這兩種都可以匹配到,具體有什么區別呢?
在[]
中出現的,只能是單個原子,每個原子之間都是或的關系
使用|元字符,兩邊可以由多個原子組成,來進行匹配
Paste_Image.png
原子集合
定義了原子集合,用來簡化書寫,一般原子集合,都可以通過原子篩選的方式給出
. 除了換行符的原子 [^/n]
\d 數字 [0-9]
\D 非數字 [^0-9]
\s 不可見原子[\f\n\r\t]
\S 可見的原子
\w 數字字母下劃線 [0-9a-zA-Z_]
\W 任意一個非下劃線,數字字母[^0-9a-zA-Z_]
量詞
所謂量詞,就是表示它前面的原子重復多少次
qaolipd 重復d次
{d,} 最少重復d次
{d,b} 重復d到b次
量詞集合
參考原子集合,是為了方便篩選元素。量詞集合的出現也是同樣的道理
- {0,} 最少重復0次,包含0次
- {1,} 最少重復1次,包含1次
?{0,1} 重復0次或者1次
修正模式
U表示貪婪模式
i忽略大小寫,用在正則中
x忽略正則中的空格,tab制表符
\
轉譯,當正則占用了需要的輸入