0
У меня есть это регулярное выражение/код JavaScript:
toReturn = toReturn.replace(/(\[url=)(.+)(\])(.+)(\[\/url\])/g, '<a target=\"_blank\" href="\$2">\$4</a>');
Но проблема в том, если пользователь вводит:
[url=example]example[/url]
some_other_text
[url=example2]example2[/url]
Это будет связать первый [url =] с последним [/ url] Создание только одного неправильного URL !!!!!
Как это исправить?
И если пользователь вводит '[url = javascript: location = http: //evil.org] [/ url]' или '[url =">
And how would I stop that Mike Samuel? –
by white-listing URLs by protocol, and properly encoding both the HTML attribute value and the HTML text node using entity escapes. –