我正在建立一个网站,代码将在PRE标签中显示为纯文本(没有突出显示,评论,没有编辑标签),我希望他们能够点击按钮并突出显示,评论和编辑要显示的代码(也在预标签中)。
显然我必须在某处存储突出显示的HTML代码,但我正在寻找像html2text这样的函数,它将采用编辑过的PRE标记的每个本质,并将其转换为纯文本PRE标记的纯文本
例如像
这样的东西<pre>
<b>ON SELECT</b>
{
"<edit title="This will be the filename.">beep.wav</edit>" SOUND
}
</pre>
这样的事情
<pre>
ON SELECT
{
beep.wav SOUND
}
</pre>
编辑:任何会出现在非html的预标签中的东西都不会有&lt; &GT;标签。会有&gt;和&lt;'s但不是一个封闭的&lt; &GT;标签。脚本语言不使用它。所以这意味着我真正需要的是提取任何已关闭的&lt; &GT;标签
答案 0 :(得分:2)
在Javascript中,您可以使用DOM函数+正则表达式
<body>
<pre>
<b>ON SELECT</b>
{
"<edit title="This will be the filename.">beep.wav</edit>" SOUND
}
</pre>
<textarea id="result" rows=10 cols=50></textarea>
<script>
x=document.getElementsByTagName("pre");
for(i in x){
text=x[i].innerHTML.replace(/<.*?>/g,'');
text=text.replace(/"/g,'');
document.getElementById("result").value+="<pre>"+text+"</pre>";
}
</script>
</body>
您将给出预期结果,根据您的需要进行调整。
<pre>
ON SELECT
{
beep.wav SOUND
}
</pre>
或在PHP中,您可以使用一些HTML解析器