为什么这不起作用(既不匹配也不匹配),它似乎没有解析它。
<?php
echo preg_match("/[[:<:]]name[[:>:]]/","my name is max");
?>
它既不输出0
也不输出1
。为什么?
你可以替换[[:<:]]
为\b
它会工作
好像您关闭了错误报告。如果您启用它,您将收到以下错误:
警告:preg_match():编译失败:在偏移量 3 处的未知 POSIX 类名...
这意味着你不能有一个由小于号 ( [[:<:]]
) 组成的类名;给它一个适当的名称。
尝试这样的事情
<?php
echo preg_match("/name/","my name is max");
?>
您有一个错误:编译失败:偏移量 3 处的未知 POSIX 类名