У меня есть строка с расширенным текстовым содержимым
что-то вроде этого, например
<code><p>Hello</p>
<br/>
<p> Christian </p>
<pre> Don't Know what to do
Теперь я не хочу, чтобы скрипт присутствовал в вышеуказанном контенте и, если он есть, esape
так что если у меня есть контент, который выглядит так
<code><p>Hello</p>
<br/>
<p> Christian </p>
<script type="text/javascript"> alert("Hello")</script>
<pre> Don't Know what to do
Необходимо заменить на
<code><p>Hello</p>
<br/>
<p> Christian </p>
<script type="text/javascript"> alert("Hello")</script>
<pre> Don't Know what to do
В настоящее время я разработал регулярное выражение для него
поэтому мой код выглядит примерно так
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(">",">"))
}
так что в результате у содержимого скрипта будет экранирован
Может кто-нибудь предложить мне более чистый способ достижения этого?