Замена в тексте
Идиотский вопрос, как заменить в тексте вот такую конструкцию [Color=цвет] на такую <Font color=цвет>:o
preg_replace("/\[Color=(цвет)\]/", "<Font color=$1>", $text);
Спасибо!
Замены не происходит, блин не силён я в регулярных выражениях, подскажите что можно с этим сделать или хотябы намекните. :(
ну ты хоть намекни, в каком месте не получаетсо. Код напиши, что-ли....
[QUOTE=mfender]preg_replace("/\[Color=(цвет)\]/", "<Font color=$1>", $text);[/QUOTE]
цвет здесь -- это "метаобозначение", если можно так выразиться. рабочий вариант должен выглядеть примерно так:
preg_replace("/\[Color=([a-zA-Z]*)\]/", "<Font color=$1>", $text);
так цвет можно будет задавать только константами типа red\blue\green и т.п.
возможно Вы хотели бы разрешить явное задание цвета в RGB, тогда регулярное выражение будет выглядеть так:
preg_replace("/\[Color=([a-zA-Z0-9#]*)\]/", "<Font color=$1>", $text);
тогда наряду с red\blue\green будут допускаться записи типа #00ffaa. побочный эффект: допустима и запись 098daeDfv#as :) так что здесь уже надо немного выпендриться. типа
preg_replace("/\[Color=([a-zA-Z]*|#[a-fA-F0-9]{6})\]/", "<Font color=$1>", $text);
в общем, регекспы часто облегчают жизнь ;)