`

java中替换特殊字符

    博客分类:
  • java
阅读更多
/** Given a string, this method replaces all occurrences of
   *  '<' with '<', all occurrences of '>' with
   *  '>', and (to handle cases that occur inside attribute
   *  values), all occurrences of double quotes with
   *  '"' and all occurrences of '&' with '&'.
   *  Without such filtering, an arbitrary string
   *  could not safely be inserted in a Web page.
   */

  public static String filter(String input) {
    if(!hasSpecialChars(input)){
       return(input);
    }
    StringBuffer filtered = new StringBuffer(input.length());
    char c;
    for(int i=0; i<input.length(); i++) {
      c = input.charAt(i);
      if (c == '<') {
        filtered.append("<");
      } else if (c == '>') {
        filtered.append(">");
      } else if (c == '"') {
        filtered.append(""");
      } else if (c == '&') {
        filtered.append("&");
      } else {
        filtered.append(c);
      }
    }
    return(filtered.toString());
  }
  public static boolean hasSpecialChars(String input) {
    boolean flag = false;
    if((input !=null) && (input.length()>0)) {
       char c;
       for(int i=0; i<input.length();i++) {
           c = input.charAt(i);
           switch(c) {
                case '<': flag = true; break;
                case '>': flag = true; break;
                case '"': flag = true; break;
                case '&': flag = true; break;
           }
       }
    }
  }
分享到:
评论

相关推荐

    java替换html特殊字符工具类

    替换html中特殊字符 htmlStr =htmlStr.replaceAll("&forall;", "∀"); htmlStr =htmlStr.replaceAll("&part;", "∂"); htmlStr =htmlStr.replaceAll("&exists;", "∃"); htmlStr =htmlStr.replaceAll("&empty...

    java实现把含有英文符号字符串转换为中文符号的实现.txt

    java实现含有英文字符串的符号替换为中文符号,在网上看了一些都没有详细的实现方式,看了这个就不用去摸索了,看了就会用了,下次有碰到这方面的,同样中文特殊符号转换为英文符号类似的逻辑

    java csv 读写框架特殊字符转义.docx

    java csv 读写框架特殊字符转义.docx

    JAVA中汉字字符转化为英文字符

    利用字符间的转化把汉字转化为英文字符主要应用于提取汉字的首字母等要求

    java字符串替换 代码转换相关源码.rar

    java字符转换类代码,可以实现判断字符串是否为空,并删除首尾空格,字符串替换函数,代码转换,GBK转换为ISO-8859-1,代码转换 从srcCode转换为destCode,代码转换,GBK转换为big5,替换非法字符,标记本身等于分隔...

    SQL拼接替换程序

    程序可以替换Java开发中SQL语句中参数的替换拼接,便于在数据库中执行Java开发中SQL语句。直接将参数替换SQL中的问号。将Java中写好的SQL拿出来,直接将参数逗号隔开依次写入,直接可替换生成可执行SQL语句。

    替换特殊字符撤柜本身加空格

    关于ReplaceAll的一些问题,忘大家采纳,谢谢

    Java使用正则表达式检索、替换String中特定字符和正则表达式的一切

    主要给大家介绍了关于Java使用正则表达式检索、替换String中特定字符和正则表达式的一切,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

    Java字符串常用方法

    判断是否含有特殊字符 校验是否是中文名字 包括 姓名 • 校验是否是英文名字 将字符串转换为大写 将字符串转换为小写 判断字符串是否为数字 判断字符串是否包含子串 字符串替换 判断字符串是否为空白(null或只包含...

    Java中的正则表达式 -- 示例详解

    大家都知道,正则表达式是一种可以用于模式匹配和替换的规范,一个正则表达式就是由普通的字符(例如字符a到z)以及特殊字符(元字符)组成的文字模式,它用以描述在查找文字主体时待匹配的一个或多个字符串。...

    使用正则表达式替换报表名称中的特殊字符(推荐)

    正则表达式,又称规则表达式。这篇文章给大家介绍了使用正则表达式替换报表名称中的特殊字符,及Java正则表达式替换所有特殊字符的方法,非常不错,具有参考借鉴价值,感兴趣的朋友一起看看吧

    <编程高亮文本编辑器>Notepad2改良版(修复特殊字符崩溃BUG)

    在部分系统中, 使用文字高亮方案, 输入部分特殊字符程序会崩溃. 例如批处理高亮方案中,在文本输入“for %%”程序出错的现象. 【基本介绍】 这是一个用来取代 Notepad 的免费程序。绿色软件,安装完毕后只有一个主...

    java正则表达式,十分有用的正则表达式

    大家都知道,正则表达式是一种可以用于模式匹配和替换的规范,一个正则表达式就是由普通的字符(例如字符a到z)以及特殊字符(元字符)组成的文字模式,它用以描述在查找文字主体时待匹配的一个或多个字符串。...

    JAVA上百实例源码以及开源项目

     Java波浪文字,一个利用Java处理字符的实例,可以设置运动方向参数,显示文本的字符数组,高速文本颜色,显示字体的 FontMetrics对象,得到Graphics实例,得到Image实例,填充颜色数组数据,初始化颜色数组。...

    JAVA上百实例源码以及开源项目源代码

     Java波浪文字,一个利用Java处理字符的实例,可以设置运动方向参数,显示文本的字符数组,高速文本颜色,显示字体的 FontMetrics对象,得到Graphics实例,得到Image实例,填充颜色数组数据,初始化颜色数组。...

    java中常用的正则式

    正则表达式是由普通字符(例如字符 a 到 z)以及特殊字符(称为"元字符")组成的文字模式。模式描述在搜索文本时要匹配的一个或多个字符串。正则表达式作为一个模板,将某个字符模式与所搜索的字符串进行匹配。

    java开源包11

    开发它是用于在UTF-8 Oracle实例中使用ASCII编码的Oracle 数据库中来正确的传输非ASCII字符。 Java模板语言 Beetl Beetl,是Bee Template Language的缩写,它绝不是简单的另外一种模板引擎,而是新一代的模板引擎,...

    java开源包6

    开发它是用于在UTF-8 Oracle实例中使用ASCII编码的Oracle 数据库中来正确的传输非ASCII字符。 Java模板语言 Beetl Beetl,是Bee Template Language的缩写,它绝不是简单的另外一种模板引擎,而是新一代的模板引擎,...

    java开源包4

    开发它是用于在UTF-8 Oracle实例中使用ASCII编码的Oracle 数据库中来正确的传输非ASCII字符。 Java模板语言 Beetl Beetl,是Bee Template Language的缩写,它绝不是简单的另外一种模板引擎,而是新一代的模板引擎,...

Global site tag (gtag.js) - Google Analytics