[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Регулярка блин уже бесит
Dron19
Вот есть строка типа This is \$back Test
Мне из нее нужно вырезать $back, а все остальное оставить, пытаюсь решить так:

$text = "This is \$back Test";
$tp = preg_replace("/(.*?)($back)(.*)/i","\\1 \\3",$text);

Ничего не получается, подскажите, как можно решить проблему?



Спустя 6 минут, 16 секунд (5.12.2010 - 20:16) inpost написал(а):
Выбирай
preg_replace("/(.*)*\$back(.*)*/ius",\1\2,$text);
str_replace('\$back','',$text);

Спустя 2 минуты, 57 секунд (5.12.2010 - 20:19) Dron19 написал(а):
все я решил проблему, закрывайте тему, прошу прощения

Спустя 1 минута, 5 секунд (5.12.2010 - 20:20) Dron19 написал(а):
да я другим способов решил

Спустя 20 минут, 40 секунд (5.12.2010 - 20:41) Dron19 написал(а):
Если интересно кому-то, то вот как я это сделал:

<?php
$Back = "1";
$text = "This is $Back Test";
$tp = preg_replace("/(.*?)[(0-9)]/is","\\1",$text);
?>

Спасибо тем, кто хотел мне помочь

Спустя 9 минут, 13 секунд (5.12.2010 - 20:50) inpost написал(а):
$Back = "1";	
$text = "This is ".$Back." Test";
$tp = preg_replace("/(.*)".$Back."(.*)/is","\1\2",$text);

Спустя 11 минут, 12 секунд (5.12.2010 - 21:01) Dron19 написал(а):
Цитата (inpost @ 5.12.2010 - 17:50)
$Back = "1";	
$text = "This is ".$Back." Test";
$tp = preg_replace("/(.*)".$Back."(.*)/is","\1\2",$text);

Так уже не выдаст This is Test, проверьте у себя

$Back = 1;
$text = "This is $Back Test";
$tp = preg_replace("/(.*?)([0-9])/is","\\1",$text);
echo $tp;

а вот так уже вернет

Спустя 3 минуты, 58 секунд (5.12.2010 - 21:05) inpost написал(а):
Если тебе только убрать, сделай через str_replace. Быстрее работать будет

Спустя 3 минуты, 17 секунд (5.12.2010 - 21:09) Rand написал(а):
Dron19
В твоей регулярке просто вырезаются все цифры, а не значение переменной. Тогда уж легче так:
$tp = preg_replace("/\d+/", "", $text);

А если надо просто удалить все вхождения $back из строки, тогда, регулярка нафиг не нужна, делай через str_ireplace (если без учета регистра) и str_replace(c учетом регистра).

Спустя 7 минут, 1 секунда (5.12.2010 - 21:16) inpost написал(а):
я туплю.
str_replace($Back,'',$text);
preg_replace("/".$Back."/iu",'',$text);


_____________
PHP+MySQL - уже изучил, осталось всего лишь это:
C,C++,C#,JavaScript,Python,Ruby,Perl,OpenGl,DirectX,ASP.NET - Намерен учить все
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.