$string = "recruitment offer human resource IT for before of";
$string = str_replace(array('it', 'for', 'of'), '-', $string);
我想从字符串中删除一些不必要的字词(在此示例中 - 我想用it
替换for
,of
和-
但我不喜欢不希望别人的话受到影响(上面的例子也会影响单词recuITment
,OFfer
和beFORe
结果:recruitment offer human resource - - before -
注意:我需要的解决方案不仅限于这些单词/ string。
答案 0 :(得分:3)
将preg_replace()
与\b
一起使用,字边界断言:
$string = preg_replace( '#\b(it|for|of)\b#i', '-', $string);
答案 1 :(得分:1)
使用外观而不是字边界更好。因为\b(it|for|of)\b
与it
字符串中的:it:
匹配。我想这不是你想要的。
$string = preg_replace( '#(?<=\s|^)(?:it|for|of)(?=\s|$)#i', '-', $string);