У меня есть строка, которая богата содержание тексталучший способ, чтобы написать это, чтобы избежать содержания HTML
что-то вроде этого, например
<p>Hello</p>
<br/>
<p> Christian </p>
<pre> Don't Know what to do </pre>
Теперь я хочу не хочу сценарий присутствовать в приведенном выше содержания, и если Настоящая esape это
так Если у меня есть содержание, которые выглядят как этот
<p>Hello</p>
<br/>
<p> Christian </p>
<script type="text/javascript"> alert("Hello")</script>
<pre> Don't Know what to do </pre>
Нужно быть заменить
<p>Hello</p>
<br/>
<p> Christian </p>
<script type="text/javascript"> alert("Hello")</script>
<pre> Don't Know what to do </pre>
Я разрабатываемой в настоящее время регулярное выражение для этого
мой код выглядит примерно так
if content.match(/<script(.+?)>/) {
content = content.replace(content.match(/<script(.+?)>/)[0],content.match(/<script(.+?)>/)[0].replace("<","<").replace(">",">"))
}
if content.match(/<\script\s*>/)
{
content = content.replace(content.match(/<\/script\s*>/)[0],content.match(/<\/script\s*>/)[0].replace("<","<").replace(">",">"))
}
поэтому содержание результат будет иметь сценарий тег сбежавшего
Может ли кто-нибудь предложить мне более чистый способ достичь этого?
HTML-sanitisation - непростая задача: см., Например, http://blog.stackoverflow.com/2008/06/safe-html-and-xss/. Я бы рекомендовал по крайней мере посмотреть на другой код, который делает это, прежде чем пытаться написать свой собственный. –