$words = array(
'one' => 1,
'two' => 2,
'three' => 3
);
$str = 'One: This is one and two and someone three.';
$result = str_ireplace(array_keys($words), array_values($words), $str);
$words = array(
'/\bone\b/i' => 1,
'/\btwo\b/i' => 2,
'/\bthree\b/i' => 3
);
$str = 'One: This is one and two and someone three.';
echo preg_replace(array_keys($words), array_values($words), $str);
3条答案
按热度按时间nnsrf1az1#
您可以在正则表达式中使用word boundries来要求单词匹配。
类似于:
会这么做
preg_replace
和i
modifier是你想在PHP中使用的。正则表达式演示:https://regex101.com/r/GUxTWB/1
PHP用法:
PHP演示:https://eval.in/667239
输出:
1:这是1和2和某人3。
9jyewag02#
你可以在preg_replace中使用\B作为单词边界:
kiayqfof3#
这个函数将帮助你替换PHP中的一些单词而不是字符。它使用pre-replace()函数