此问题已经在这里有了答案:
我正在尝试preg_match $ data中的确切单词(在本例中为'gr')。我有以下代码:
$data = "he is grêt";
preg_match_all("/\b(gr)#?\b/i", $data, $output);
print_r($output);
这将输出以下内容:
Array
(
[0] => Array
(
[0] => gr
)
[1] => Array
(
[0] => gr
)
)
'gr',它与'grêt'不完全匹配,因此不应该匹配。我相信这与'ê'字符有关;当将其替换为'e'时,代码将按预期工作。
我会这样做的方式:
$data = "he is grêt";
preg_match_all("/\b(gr)(?:\PL|$)/iu", $data, $output);
print_r($output);