Задолбали регулярные
Код:
function string_preg($str){
$search=array("'(\[)(color)(=)(.)*?(\])'");
$replace=array("\\4");
return preg_replace($search,$replace,$str);
};
echo string_preg("[color=crimson]");
$search=array("'(\[)(color)(=)(.)*?(\])'");
$replace=array("\\4");
return preg_replace($search,$replace,$str);
};
echo string_preg("[color=crimson]");
Выводит млин n, а нада чтоб - crimson...
В то же время $replace=array("\\1"); выводит правильно (кавычку), да короче все выводит правильно кроме $replace=array("\\4");
Заранее благодарен.
Код:
"'(\[)(color)(=)(.*?)(\])'"
а лучьше
Код:
"'(\[)(color)(=)(\w*?)(\])'"
Код:
function string_preg($str){
$search=array("'(\\[)(color)(=)(.*)(\\])'");
$replace=array("\\4");
return preg_replace($search,$replace,$str);
}
echo string_preg("[color=crimson]");
$search=array("'(\\[)(color)(=)(.*)(\\])'");
$replace=array("\\4");
return preg_replace($search,$replace,$str);
}
echo string_preg("[color=crimson]");
Вот так у меня работает. Возвращает то, что надо.:}
Цитата:
Originally posted by Fenyx
Выводит млин n, а нада чтоб - crimson...
В то же время $replace=array("\\1"); выводит правильно (кавычку), да короче все выводит правильно кроме $replace=array("\\4");
Заранее благодарен.
Код:
function string_preg($str){
$search=array("'(\[)(color)(=)(.)*?(\])'");
$replace=array("\\4");
return preg_replace($search,$replace,$str);
};
echo string_preg("[color=crimson]");
$search=array("'(\[)(color)(=)(.)*?(\])'");
$replace=array("\\4");
return preg_replace($search,$replace,$str);
};
echo string_preg("[color=crimson]");
Выводит млин n, а нада чтоб - crimson...
В то же время $replace=array("\\1"); выводит правильно (кавычку), да короче все выводит правильно кроме $replace=array("\\4");
Заранее благодарен.
Хех, пора бы выучить уже служебные символы.