正确转义正则表达式中的URL斜杠

时间:2015-11-27 19:36:41

标签: php regex

我需要帮助在搜索URL路径的模式中转义斜杠。我正在尝试检查路径是否包含/orders/之后的路径中的任何数字:

$str = '/admin/store/orders/20284?width...';

if ( preg_match ( '/orders/([0-9]+)/', $str, $matches ) )
{
    print_r($matches);
}

但是,我无法正确逃避斜线。有人可以帮忙吗?谢谢。

1 个答案:

答案 0 :(得分:4)

使用反斜杠(\/)进行转义。但是用于分隔正则表达式的斜杠字符可以是任何字符:

if ( preg_match ( '~orders/([0-9]+)~', $str, $matches ) )

无需逃避即可工作。