1. 程式人生 > >utf-8 特殊字元過濾

utf-8 特殊字元過濾

/**
     * 去除字串特殊字元
     * */
    public static String stripNonCharCodepoints(String input) {
        
        if (input != null) {
            input = input.replace("", "");
        }
        StringBuilder retval = new StringBuilder();
        char ch;
    
        for (int i = 0; i < input.length(); i++) {
          ch = input.charAt(i);
    
          if (ch % 0x10000 != 0xffff && // 0xffff - 0x10ffff range step 0x10000
              ch % 0x10000 != 0xfffe && // 0xfffe - 0x10fffe range
              (ch <= 0xfdd0 || ch >= 0xfdef) && // 0xfdd0 - 0xfdef
              (ch > 0x1F || ch == 0x9 || ch == 0xa || ch == 0xd)) {
    
            retval.append(ch);
          }
        }
        return retval.toString();
      }