[JAVA]判斷字串是否為亂碼

來源:互聯網
上載者:User
    import java.util.regex.Matcher;      import java.util.regex.Pattern;            public class MessyCodeCheck {              public static boolean isChinese(char c) {          Character.UnicodeBlock ub = Character.UnicodeBlock.of(c);          if (ub == Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS              || ub == Character.UnicodeBlock.CJK_COMPATIBILITY_IDEOGRAPHS              || ub == Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS_EXTENSION_A              || ub == Character.UnicodeBlock.GENERAL_PUNCTUATION              || ub == Character.UnicodeBlock.CJK_SYMBOLS_AND_PUNCTUATION              || ub == Character.UnicodeBlock.HALFWIDTH_AND_FULLWIDTH_FORMS) {            return true;          }          return false;        }              public static boolean isMessyCode(String strName) {          Pattern p = Pattern.compile("\\s*|\t*|\r*|\n*");          Matcher m = p.matcher(strName);          String after = m.replaceAll("");          String temp = after.replaceAll("\\p{P}", "");          char[] ch = temp.trim().toCharArray();          float chLength = ch.length;          float count = 0;          for (int i = 0; i < ch.length; i++) {            char c = ch[i];            if (!Character.isLetterOrDigit(c)) {                    if (!isChinese(c)) {                count = count + 1;                System.out.print(c);              }            }          }          float result = count / chLength;          if (result > 0.4) {            return true;          } else {            return false;          }              }              public static void main(String[] args) {          System.out.println(isMessyCode("*��JTP.jar�ļ����JTP�ļ���ȡ��ͼƬ��Դ"));          System.out.println(isMessyCode("你好"));        }      }  

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.