我如何从字符串(例如字符串)中替换/删除完全匹配的单词
$string = 'Hello world, command data test com';
如何删除com(与字符串完全匹配),但不删除命令中的com
答案 0 :(得分:7)
您需要使用preg_replace。基本上 preg_replace()
在主题中搜索模式匹配项并将其替换为替换项。
<?php
$string = 'Hello world, command data test com';
$string = preg_replace('/\bcom\b/', '', $string);
echo $string;
?>
说明:模式说明如下:
\ b:匹配单词边界。
com:要匹配的文本。
有关更多信息,请 this
答案 1 :(得分:3)
简短版本:
join(' ',array_diff(explode(' ', $string), ['com']));
说明:
explode(' ', $string)
将您的字符串分成单词数组array_diff($words, ['com'])
从第一个数组中删除第二个数组中的元素。因此,如果$words
的数组包含单词com
,它将被删除join(' ', $words)
合并$words
数组中的所有字符串,将每个单词彼此隔开一个空格。完整摘要:
<?php
$string = 'Hello world, command data test com';
$words = explode(' ', $string);
$words = array_diff($words, ['com']);
$string = join(' ', $words);
答案 2 :(得分:1)