Как я могу заменить/удалить слово с точным соответствием из строки, пример строки
$string = 'Hello world, command data test com';
Как удалить com (точное совпадение из строки), но не удалять com из команды в






Вам нужно использовать preg_replace. В основном preg_replace() ищет в теме совпадения с шаблоном и заменяет их заменой.
<?php
$string = 'Hello world, command data test com';
$string = preg_replace('/\bcom\b/', '', $string);
echo $string;
?>
Объяснение: Вышеприведенный пример шаблона поясняется ниже
\б: Соответствует границе слова.
ком: Текст для сопоставления.
Для получения дополнительных определений специальных символов проверьте это
Спасибо! это то, что мне было нужно!
@Smartpal я так не думаю, str_replace() замените команду на mand
@ShanteshwarInde Да, это .... Извините, я забыл com в команде. Проголосовали за
@ShanteshwarInde готово, мне нужно было подождать еще 4 минуты, чтобы принять это
Укороченная версия:
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);
хотя у моего ответа больше голосов, но этот мой любимый! просто добавьте объяснение, чтобы больше людей поняли. Спасибо!
Я искренне думаю, что ваш вариант лучше! Ахахах, я добавлю лучшее объяснение
str_replace удаляет com из команды, это не помогает