[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: помощь с регулярными выражениями
дианитка
Помогите пожалуйста при помощи регулярных выражений сделать замену
http://www.google.com/block/
на
http://www.yandex.com/block/



Спустя 14 минут, 16 секунд (29.06.2011 - 21:41) kovaldm написал(а):
Как-то так.
    $pattern     = '#google#i';
$string = 'http://www.google.com/block/';
$replacement = 'yandex';

$string = preg_replace($pattern, $replacement, $string);

Спустя 2 минуты, 27 секунд (29.06.2011 - 21:43) Winston написал(а):
    $str = 'http://www.google.com/block/';
$str = preg_replace("/google/i", 'yandex', $str);
echo $str;

Спустя 2 минуты, 54 секунды (29.06.2011 - 21:46) waldicom написал(а):
В данном случае не обязательны регулярки, можно просто str_replace()

Спустя 24 минуты, 27 секунд (29.06.2011 - 22:11) дианитка написал(а):
Cпасибо, а еще можете подсказать: чтоб заменить aa-144-28-pp на aa-251-47-pp нужно разделять строку на элементы, а потом уже делать замену?

Спустя 5 минут, 27 секунд (29.06.2011 - 22:16) Winston написал(а):
Можно просто
    $str = 'aa-144-28-pp';
echo str_replace('aa-144-28-pp', 'aa-251-47', $str);


Ну, а если будут числа меняться значит нужно регуляркой работать.

Спустя 52 секунды (29.06.2011 - 22:17) kovaldm написал(а):
Можно так, можно регулярками, можно str_replace().

Спустя 4 минуты, 32 секунды (29.06.2011 - 22:22) Winston написал(а):
Ну да, нужно знать что конкретно надо

Спустя 20 минут, 30 секунд (29.06.2011 - 22:42) дианитка написал(а):
//функция split()
$z='aa-144-28-pp';
$iparr=split("\-",$z);
print $iparr[0];
print $iparr[1] ;
print $iparr[2] ;
print $iparr[3] ;

$str = preg_replace("/$iparr[1]/i", '251', $str);
$str = preg_replace("/$iparr[2]/i", '47', $str);
print $str;

а примерно так можно? правда этот скрипт не работает(

Спустя 10 минут, 37 секунд (29.06.2011 - 22:53) kovaldm написал(а):
    $string  = 'aa-144-28-pp';
$pattern = '/([a-z]+)-[0-9]+-[0-9]+-([a-z]+)/i';

$string = preg_replace($pattern, '$1-251-47-$2', $string);

Спустя 56 минут, 13 секунд (29.06.2011 - 23:49) дианитка написал(а):
Большое спасибо:)

Спустя 41 минута, 36 секунд (30.06.2011 - 00:30) walerus написал(а):
Цитата (дианитка @ 29.06.2011 - 19:42)
//функция split()
$z='aa-144-28-pp';
$iparr=split("\-",$z);
print $iparr[0];
print $iparr[1] ;
print $iparr[2] ;
print $iparr[3] ;

$str = preg_replace("/$iparr[1]/i", '251', $str);
$str = preg_replace("/$iparr[2]/i", '47', $str);
print $str;

а примерно так можно? правда этот скрипт не работает(

Немного не так

$z='aa-144-28-pp';
$iparr=split("\-",$z);

/* Закоментировали чтоб не мешало...
print $iparr[0];
print $iparr[1] ;
print $iparr[2] ;
print $iparr[3] ;
*/


$z = preg_replace("/$iparr[1]/i", '251', $z);
$z = preg_replace("/$iparr[2]/i", '47', $z);
print $z;


в том коде, небыло переменной $str, по этому и не работало...

Спустя 12 часов, 7 минут, 49 секунд (30.06.2011 - 12:38) Winston написал(а):
Цитата (walerus @ 30.06.2011 - 00:30)
$iparr=split("\-",$z);

split уже в deprecated, потому лучше использовать preg_split


_____________
дианка[COLOR=purple]
Быстрый ответ:

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