Я пытаюсь разобрать BB-коды в php, но я не думаю, что мой код вообще безопасен.
$Text = preg_replace("(\[color=(.+?)\](.+?)\[\/color\])is","<span style=\"color: $1\">$2</span>",$Text);
Я думаю, что вы можете сделать такую инъекцию, и она будет работать:
[color=<script>alert('gotcha');</script>]...[/color]
Как улучшить мое регулярное выражение, чтобы захватить только два стандартных цветовых формата:
[color=red]...[/color] OR [color=#FF0000]...[/color]
Спасибо