3.1. 转义
使用 元字符 \
可以转义所有元字符,包括自身
<?php
//字符串
$str = '$arr[\0],$arr[\1]';
//正则表达式
$regular = '/\$arr\[\\\\[0-9]\]/';
//执行匹配正则表达式
preg_match_all($regular, $str, $matches);
//打印结果
echo '<pre>';
print_r($matches);
echo '</pre>';
输出结果
Array
(
[0] => Array
(
[0] => $arr[\0]
[1] => $arr[\1]
)
)
你一定会有疑惑,为什么转义 \
需要 4个 \
才能转义呢?
那是因为 PHP 正则解释器在执行到 \\\\
的时候,其实是拆开来解释的
先解释前面的 \\
,因为 \
遇到 \
的时候会被转义,所以前两个斜杠转义后的结果为 \
然后在解释后面的 \\
,得到 \
最后在执行的时候,才是我们想要的样子,以下是解释过程
/\$arr\[
\\ 等于第一个 \
\\ 等于第二个 \
[0-9]\]/
推荐文章: