O código é muito prático, sem bobagens aqui, basta apresentá-lo
A principal função é determinar se uma string contém caracteres chineses e substituí-la por ASCLL
private static String regEx = "[//u4e00-//u9fa5]"; /** * Determine se a string contém caracteres chineses e substitua-os por ASCLL * * @param str_para * @return str_result */ private static String isChinese_Replace( String str_para ) { Padrão p = Pattern.compile( regEx ); String str_result = str_para; str_1 = ""; String str_data[] = null; String str_return_reslut = ""; for (int i = 0; i <str_data.length; i++) { Matcher m = p.matcher( str_data[i] ); /* Ld(str_data[i]); */ int contagem = 0; getBytes("GBK"); str_0 = Integer.toHexString( b[0] ); ); ; } catch (UnsupportedEncodingException e ) { e.printStackTrace(); } else { return(str_return_reslut } return(str_return_reslut } /* Conversão de string para decimal*/ public static int conver10( String str_0 ) { return(Integer.parseInt( str_0.substring) (str_0.comprimento() - 2, str_0.comprimento()), 16));
Vamos dar uma olhada em um código um pouco mais simples que pode ser usado em locais onde a demanda não é alta.
importar java.util.regex.Matcher;importar java.util.regex.Pattern;public class demo {static String regEx = "[/u4e00-/u9fa5]";static Pattern pat = Pattern.compile(regEx);public static void main(String[] args) {String input = "Inferno mundo!";System.out.println(isContainsChinese(input));input = "olá mundo";System.out.println(isContainsChinese(input));} public static boolean isContainsChinese(String str){Matcher matcher = pat.matcher(str);boolean flg = false;if (matcher.find()) {flg = verdadeiro;}retornar flg;}
Finalmente, anexamos a gama de codificações Unicode para vários caracteres:
* Caracteres chineses: [0x4e00,0x9fa5] (ou decimal [19968,40869])
* Número: [0x30,0x39] (ou decimal [48, 57])
*Letras minúsculas: [0x61,0x7a] (ou decimal [97, 122])
* Letras maiúsculas: [0x41,0x5a] (ou decimal [65, 90])