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 ("Hello"));
}
}
Java determines if a string is garbled