java如何去掉字符串中的 html标签

html-css07

java如何去掉字符串中的 html标签,第1张

1.去除单个HTML标记 String s="asdfasd<script>asdfsfd</script>1234"System.out.println(s.replaceAll("<script.*?(?<=/script>)",""))2.去除所有HTML标记 import java.util.regex.Matcherimport java.util.regex.Patternpublic class HTMLSpirit{ ITjob 远标教育public static String delHTMLTag(String htmlStr){ String regEx_script="<script[^>]*?>[\\s\\S]*?<\\/script>"//定义script的正则表达式 String regEx_style="<style[^>]*?>[\\s\\S]*?<\\/style>"//定义style的正则表达式 String regEx_html="<[^>]+>"//定义HTML标签的正则表达式 Pattern p_script=Pattern.compile(regEx_script,Pattern.CASE_INSENSITIVE) Matcher m_script=p_script.matcher(htmlStr) htmlStr=m_script.replaceAll("")//过滤script标签 Pattern p_style=Pattern.compile(regEx_style,Pattern.CASE_INSENSITIVE) Matcher m_style=p_style.matcher(htmlStr) htmlStr=m_style.replaceAll("")//过滤style标签 Pattern p_html=Pattern.compile(regEx_html,Pattern.CASE_INSENSITIVE) Matcher m_html=p_html.matcher(htmlStr) htmlStr=m_html.replaceAll("")//过滤html标签 return htmlStr.trim()//返回文本字符串 } }

静态的html标签是无法直接调用java程序的

有几种方法可以实现

1、将按钮放到form表单中,当按钮点击时提交表单(或者直接将input的type属性定义成submit),表单可以指向JSP或Servlet,在JSP或Servlet里调用java程序

2、在按钮的onclick时间中添加js代码

self.location="url"其中url指向JSP或Servlet

3、使用第三方的javascript包,dwr是一个不错的选择:

需要准备dwr的jar包,并将之放到lib目录下;

修改web.xml文件,添加DWRServlet的映射;

配置dwr,即在WEB-INF目录下,添加dwr.xml文件,让dwr知道在运行的时候应该给哪些JavaBean生成相应的javascript库!

将需要的脚本库引入到html页面中就可以通过dwr的API访问java类了

不是很难,网上参考资料挺多的

4、使用MVC框架的话就更简单了,以struts为例,可以仿照1或2,将url替换成配置文件中配置的地址就能访问java程序了