使用正则表达式检查空格或特殊字符



我想将正则表达式与字符串中的正则表达式匹配,以匹配空格或特殊字符"/"。

这是我的代码

preg_match_all('/[s]+('.$pattern.')/', $p_des, $matches_product);

这段代码正在正确检查间距,但我还想包含 OR 条件,它可以检查空格或"/"或数字。

我尝试了/[[0-9]s/]('.$pattern.')/'模式,但它与字符串不匹配。

谢谢。

你的[[0-9]s/](string|text)模式被破坏了,因为字符类[0-9]被放在字符类[s/]中,第一个未转义的]关闭字符类,字符类模式的其余部分被视为一系列子模式([[0-9]s/]匹配[或数字,然后是空格后跟/, 例如 1 /[ 2)。

您需要改用[0-9s/][ds/]

preg_match_all('/[0-9s/]+('.$pattern.')/', $p_des, $matches_product);

最新更新