2013-09-12 3 views
3

Как обрезать целые слова из PHP строкиPHP обрезать целые слова

, как я не хочу "foo", "bar", "mouse" слова слева и "killed" на конце строки.

Так бы not быть обрезаны

Но "foo awesome killed" =>" awesome "

"killed awesome foo" не обрезается (убит обрезается справа, остальные слева)

Когда я использую ltrim($str, "foo"); он будет обрезать любую букву из "foo" - "f" или "o"

ответ

10

Используйте preg_replace() заменить строки с пустой строкой.

$str = preg_replace('/^(foo|bar|mouse)|killed$/', '', $str); 

Перейти к regular-expressions.info, чтобы узнать больше о регулярных выражениях.

+0

umm, действительно нет встроенной функции? Имо его общая «потребность» – pie6k

+1

Не кажется мне очень распространенным явлением. Какое приложение нуждается в этом? – Barmar

+0

'trim' обычно используется для удаления таких вещей, как пробелы или разделители, поэтому он принимает набор символов, а не точную строку. – Barmar

0

Используйте функцию preg_match и создайте свой собственный patteren на основе вашего requirment.

<?php 
$subject = "abcdef"; 
$pattern = '/^foo$killed/'; 
preg_match($pattern, $subject, $matches, PREG_OFFSET_CAPTURE, 3); 
print_r($matches); 
?> 
Смежные вопросы