正則包括:
- 限定符
- 原子
- 元字符
- 模式修正符(eg:
i
表示不區分大小寫)
常用正則表達:
[a-z]
小寫字母a-z
[0-9]
數字0-9
\d
數字字符,等價於[0-9]
\D
非數字字符,等價於[^0-9]
\w
匹配字母、數字、下劃線。等價於[A-Za-z0-9_]
\W
匹配非字母、數字、下劃線。等價於[^A-Za-z0-9_]
\b
匹配一個單詞邊界,也就是指單詞和空格間的位置(eg:er\b
可以匹配never
中的er
,但不能匹配verb
中的er
)\B
匹配非單詞邊界(eg:er\B
能匹配verb
中的er
,但不能匹配never
中的er
)^
表示以…開始$
表示以…結尾.
表示任何原子?
表示0或1,表示可有可無+
表示1次或多次*
表示0次,1次,多次,任意次.*?
.+?
後面加問號都表示取消貪婪(:? )
不當作子模式
常用正則函數及相應的字符串函數:
正則函數
- 分割:
preg_split();
- 匹配查找:
preg_match();
,preg_match_all();
,preg_grep();
- 替換:
preg_replace();
字符串
- 分割:
explode();
- 匹配查找:
strstr();
,strpos();
,substr();
- 替換:
str_replace();