Java 如何使用Rhino去除<;脚本>;标签?
我有一封HTML电子邮件,我使用Jsoup解析它:-Java 如何使用Rhino去除<;脚本>;标签?,java,javascript,regex,jsoup,rhino,Java,Javascript,Regex,Jsoup,Rhino,我有一封HTML电子邮件,我使用Jsoup解析它:- Jsoup.parse(bizmsg.getMessageBody()).text() 但它无法删除脚本标记:- <script> document.write("Bazinga!") </script> 文档。写(“巴辛加!”) 我一直在这样使用正则表达式:- String(v).replace(/(?:<script.*?>)((\n|\r|.)*?)(?:<\/script>)/ig
Jsoup.parse(bizmsg.getMessageBody()).text()
但它无法删除脚本标记:-
<script>
document.write("Bazinga!")
</script>
文档。写(“巴辛加!”)
我一直在这样使用正则表达式:-
String(v).replace(/(?:<script.*?>)((\n|\r|.)*?)(?:<\/script>)/ig, "");
String(v).替换(/(?:)(\n |\r |.*)(?:)/ig,”;
以成功删除脚本。但我遇到了这个问题
如何使用Rhino解析脚本?代码示例将非常有用,谢谢。您不需要使用Rhino删除
标记。在JSoup中使用简单的CSS选择器并删除获得的节点。下面是www.google.com上的一个小例子
public static void main(String[] args) throws MalformedURLException, IOException {
Document doc = Jsoup.parse(new URL("http://www.google.com"),5000);
Elements elems = doc.select("script");
for (Element elem : elems)
elem.remove();
System.out.println(doc);
}
这个答案对你有帮助吗?