字符串过滤标签

  1. package com.xz.cxzy.utils;
  2. import java.util.regex.Matcher;
  3. import java.util.regex.Pattern;
  4. public class HtmlUtil {
  5. private static final String regEx_script = "<script[^>]*?>[\\s\\S]*?<\\/script>"; // 定义script的正则表达式
  6. private static final String regEx_style = "<style[^>]*?>[\\s\\S]*?<\\/style>"; // 定义style的正则表达式
  7. private static final String regEx_html = "<[^>]+>"; // 定义HTML标签的正则表达式
  8. private static final String regEx_space = "\\s*|\t|\r|\n";//定义空格回车换行符
  9. /**
  10. * @param htmlStr
  11. * @return
  12. *  删除Html标签
  13. */
  14. public static String delHTMLTag(String htmlStr) {
  15. Pattern p_script = Pattern.compile(regEx_script, Pattern.CASE_INSENSITIVE);
  16. Matcher m_script = p_script.matcher(htmlStr);
  17. htmlStr = m_script.replaceAll(""); // 过滤script标签
  18. Pattern p_style = Pattern.compile(regEx_style, Pattern.CASE_INSENSITIVE);
  19. Matcher m_style = p_style.matcher(htmlStr);
  20. htmlStr = m_style.replaceAll(""); // 过滤style标签
  21. Pattern p_html = Pattern.compile(regEx_html, Pattern.CASE_INSENSITIVE);
  22. Matcher m_html = p_html.matcher(htmlStr);
  23. htmlStr = m_html.replaceAll(""); // 过滤html标签
  24. Pattern p_space = Pattern.compile(regEx_space, Pattern.CASE_INSENSITIVE);
  25. Matcher m_space = p_space.matcher(htmlStr);
  26. htmlStr = m_space.replaceAll(""); // 过滤空格回车标签
  27. return htmlStr.trim(); // 返回文本字符串
  28. }
  29. public static String getTextFromHtml(String htmlStr){
  30. htmlStr = delHTMLTag(htmlStr);
  31. htmlStr = htmlStr.replaceAll("&nbsp;", "");
  32. htmlStr = htmlStr.substring(0, htmlStr.indexOf("。")+1);
  33. return htmlStr;
  34. }
  35. public static void main(String[] args) {
  36. String str = "<div style=‘text-align:center;‘> 整治“四风”   清弊除垢<br/><span style=‘font-size:14px;‘> </span><span style=‘font-size:18px;‘>公司召开党的群众路线教育实践活动动员大会。</span><br/></div>";
  37. System.out.println(getTextFromHtml(str));
  38. }
  39. }
时间: 2024-08-05 18:04:25

字符串过滤标签的相关文章

字符串过滤

一.题目描述(60分):通过键盘输入一串小写字母(a~z)组成的字符串.请编写一个字符串过滤程序,若字符串中出现多个相同的字符,将非首次出现的字符过滤掉.比如字符串“abacacde”过滤结果为“abcde”. 要求实现函数:void stringFilter(const char *pInputStr, long lInputLen, char *pOutputStr); [输入] pInputStr:  输入字符串            lInputLen:  输入字符串长度        

华为机试—字符串过滤

题目:字符串过滤 通过键盘输入一串小写字母(a~z)组成的字符串.请编写一个字符串过滤程序,若字符串中出现多个相同的字符,将非首次出现的字符过滤掉. 比如字符串"abacacde"过滤结果为"abcde". 要求实现函数: void stringFilter(const char *pInputStr, long lInputLen, char *pOutputStr); [输入] pInputStr:  输入字符串 lInputLen:  输入字符串长度 [输出]

通过键盘输入一串小写字母(a~z)组成的字符串。请编写一个字符串过滤程序,若字符串中出现多个相同的字符,将非首次出现的字符过滤掉。 比如字符串“abacacde”过滤结果为“abcde”。

这是华为2013的一个机试题,会好半天才想出来,用了三个for循环,可能有点繁琐,但只要慢慢看还是好理解的, 题目: 通过键盘输入一串小写字母(a~z)组成的字符串.请编写一个字符串过滤程序,若字符串中出现多个相同的字符,将非首次出现的字符过滤掉. 比如字符串"abacacde"过滤结果为"abcde". #include<stdio.h> #include<string.h> void main() { char a[]="aba

字符串过滤--华为笔试

一.题目描述(60分):通过键盘输入一串小写字母(a~z)组成的字符串.请编写一个字符串过滤程序,若字符串中出现多个相同的字符,将非首次出现的字符过滤掉.比如字符串“abacacde”过滤结果为“abcde”. 要求实现函数:void stringFilter(const char *pInputStr, long lInputLen, char *pOutputStr); [输入] pInputStr:  输入字符串            lInputLen:  输入字符串长度       

Python 字符串过滤

需求: str1 = " """<div class="m_wrap clearfix"><ul class="clearfix"><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><b

织梦采集用的HTML过滤标签大全

用织梦做采集的时候可以需要用到很多的采集规则,以下分享织梦采集用的HTML过滤标签大全. 织梦采集用的HTML过滤标签大全{dede:trim}<object([^>]*)>([^>]*)</object>{/dede:trim} {dede:trim}<object([^>]*)>{/dede:trim} {dede:trim}</object>{/dede:trim} {dede:trim}<OBJECT([^>]*)>

asp.net 字符串过滤

/// <summary> /// 去除HTML标记 /// </summary> /// <param name="Htmlstring">包括HTML的源码</param> /// <returns>已经去除后的文字</returns> public static string GetNoHTMLString(string Htmlstring) { //删除脚本 Htmlstring = Regex.Repl

iOS字符串过滤字符--NSCharacterSet

OC中可以使用stringByTrimmingCharactersInSet函数过滤字符串中的特殊符号. 首先定义一个NSCharacterSet, 包含需要过滤的特殊符号, NSCharacterSet *set = [NSCharacterSet characterSetWithCharactersInString:@"@/::()¥「」".[]{}#%-*+=_\\|~<>$€^•'@#$%^&*()_+'\""]; 这里既要包含全角也要包含半角字符

C#读取Word模板替换相应的字符串(标签)生成新的Word

在平常工作中,生成word的方式主要是C#读取html的模板文件处理之后保存为.doc文件,这样的好处是方便,快捷,能满足大部分的需求.不过有些特殊的需求并不能满足,如要生成的Word为一个表格,只是一部分字符串需要变化,用上面的方法生成Word表格容易变形.如果我们能读取一个word模板,把模板里定义的固定字符串如{标记1}替换为想要的文字,然后生成新的word.这样生成的Word非常整洁. 查找了网上许多方法,虽然都是调用office的接口,并没有一个好的方案.通过自己的实验,比较,使用Mi