Удаление подстроки

Статус
В этой теме нельзя размещать новые ответы.

LEXAlForpostl

Мой дом здесь!
Регистрация
21 Май 2008
Сообщения
766
Реакции
228
Как удалить подстроку в переменной $text по следующему правилу:
Подстрока начинается с первого символа переменной $text и заканчивается символом -
 
Вот, попробуй
Код:
<?php
	$pos = strpos($text, "-");
    $len=strlen($text);
if ($pos === false) {
    // не нашел
}else{
    $res = substr($text, $pos,$len-$pos);
    echo $res;
}

?>
 
И так тоже попробуйте

PHP:
$text = preg_replace("/^.*-/", "", $text);

или так
PHP:
$text = preg_replace("/^[^-]*-/", "", $text);
 
Как удалить подстроку в переменной $text по следующему правилу:
Подстрока начинается с первого символа переменной $text и заканчивается символом -

То есть иными словами удалить от начала строки до "-" ?
PHP:
list(,$text) = explode('-',$text);
Так, что ли?

Или что значит "с первого символа переменной $text и до -" и при этом само же находится в $text? Проясни плиз.
Дословно твоя задача решается так:

PHP:
$text = preg_replace('#'.preg_quote($text[0]).'.*?-#','',$text);

Но оно именно что и удалит от начала строки (первый символ $text) до "-".

Вместо .*? подставляй символы, которые могут встречаться в подстроке, например [a-z0-9.,\s_]+ или там [^-]. Чтобы было нежадным.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху