我正试图找到一种方法来清理一些非常草率的HTML(机器生成)。
我的假设是这个解决方案的正则表达式,但我不知道从哪里开始。
HTML like ...
the <div>government’s</div> “risk management” efforts. As <br />
<span style="line-height:1.6em">critical infrastructure provides</span><br>
到HTML ... ...
the government's "risk management" efforts. As critical infrastructure provides
这意味着更换或删除多个不同的标签...
= ' '
<br /> = ' '
<br> = ' '
“ = "
” = "
’ = '
<span> = REMOVE
<div> = REMOVE
style = REMOVE
我有几个不同的文本编辑器(Sublime Text,TextMate等),我可以使用apps,applescript或其他任何东西来节省手动搜索其中的每一个。
感谢您的帮助。
答案 0 :(得分:0)
用<span>
标签包装,获取内部html,并执行string.replace
<span id="test">
the
<div>government’s</div>“risk management” efforts. As
<br />
<span style="line-height:1.6em">critical infrastructure provides</span>
<br>
</span>
var cleanText = test.innerHtml.replace("<div>","");
或者只需要innerText
,它就会删除所有标签。
答案 1 :(得分:0)
使用Sublime Text,您可以通过Package Control安装插件ClipboardCommands,然后
这将按预期工作,但正如您所看到的,它有点烦人,您可以自己扩展此插件或安装现有的one, 我从原点分叉并进行一些改动以满足您的要求。 你可以在任何地方复制草率的html,然后使用命令&#34;剪贴板:粘贴纯文本和html标签去掉&#34;通过快速面板(ctrl + shift + p)或绑定任何你喜欢的快捷方式