【发布时间】:2026-02-13 11:25:01
【问题描述】:
如何在字符串中准确找到字符串? 我的代码似乎不起作用:
if ( preg_match("/\b" . $needle . "\b/", $string) )
return 'has-error';
给定这个值:
$string = 'Sub-Category is required.';
$needle = 'Category';
它返回 TRUE。它应该是 FALSE,因为我正在寻找的是“类别”这个词。虽然单词本身在字符串中,但它仍然不被认为是它。
谢谢!
【问题讨论】:
-
不确定这是否与问题有关,但您通常应该在正则表达式中使用
preg_quote()变量 -
你想知道
Category这个词是否在$string或者$string是否等于Category? -
我想知道 $string 是否等于 Category。
-
如果你只想要平等,为什么不使用
strtolower($needle) == "category"之类的东西? -
这是因为 $string 可能包含不同的值,如果 $needle 在 $string 中匹配,它应该返回 TRUE。
标签: php preg-match string-matching