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