符号 | 含义 |
---|---|
\b | 单词的分界符 |
\d | 0-9数字 |
\w | 字母,数字,下划线,汉字 |
\s | 任意的空白符 |
. | 除了换行外的任意字符 |
^ | 匹配字符串的开始 |
$ | 匹配字符串的结束 |
? | 零次活一次 |
+ | 至少一次 |
* | 零次或更多 |
正则的分组是根据左括号来判断的,可以使用反引用来替代分组的规则\1表示第一个分组的规则
表达式也可以有注释(?#注释信息)
正则表达式分捕获和非捕获的模式
捕获和非捕获的区别
只是正常的匹配,但是匹配结果不会保存起来,不会用到表达式和组中
- PREG_OFFSET_CAPTURE
- PREG_SET_ORDER
- PREG_PATTERT_ORDER
- PREG_OFFET_CAPTURE | PREG_SET_ORDER
- PREG_PATTERN_ORDER matches[0]匹配所有的规范, matches[1]匹配第一个子组
- PREG_SET_ORDER matches[0]第一个匹配的所有的规范的值(包括子组), matches[0][0]第一个匹配的所有的规范的值
- PREG_OFFSET_CAPTURE matchees[0]是所有的规范的匹配值,包括了相对 pattern偏移位置,$matches[1]是匹配第一个子组和偏移的位置
- PREG_OFFSET_CAPTURE | PREG_SET_ORDER $matches[0] 是第一个完全规则匹配的元素(包括子组和偏移量的集合)