Всем привет, у меня есть вот такая регулярка. Как сделать так, чтобы замена НЕ происходила в тексте взятом в [] [] с двух сторон? Например [mp3]79261234567[/mp3] Благодарю! Код (Text): $r[$f]=preg_replace('/([0-9]{11})/', '<a target="_blank" href="'.URLDEV.'b24/r.php?ph=$1">$1</a>', $r[$f]);
https://regex101.com/r/jeb3p6/1/ PHP: preg_replace('~([0-9]{11})(?![^\[]*\[/)~', '<a target="_blank" href="'.URLDEV.'b24/r.php?ph=$1">$1</a>', $r[$f]); https://regex101.com/r/jeb3p6/2/ PHP: preg_replace('~([0-9]{11})|\[(\w+).*?\[/\2](*SKIP)(*F)~s', '<a target="_blank" href="'.URLDEV.'b24/r.php?ph=$1">$1</a>', $r[$f]);