>  기사  >  Java  >  Java는 문자열에 중국어 문자가 포함되어 있는지 여부를 어떻게 확인하고 중국어 문자를 필터링합니까?

Java는 문자열에 중국어 문자가 포함되어 있는지 여부를 어떻게 확인하고 중국어 문자를 필터링합니까?

黄舟
黄舟원래의
2017-09-08 10:56:132079검색

이 글에서는 문자열에 한자가 포함되어 있는지 확인하고 한자를 필터링하는 방법을 주로 java에 대해 자세히 소개합니다. 특정 참조 값이 있습니다. 관심 있는 친구가 참조할 수 있습니다.

java는 문자열에 한자가 포함되어 있는지 확인하고 한자를 필터링합니다. 문자를 필터링합니다. 구체적인 내용은 다음과 같습니다

1. 문자열에 중국어 메소드 캡슐화가 포함되어 있는지 확인


/**
 * 判断字符串中是否包含中文
 * @param str
 * 待校验字符串
 * @return 是否为中文
 * @warn 不能校验是否为中文标点符号 
 */
public static boolean isContainChinese(String str) {
 Pattern p = Pattern.compile("[\u4e00-\u9fa5]");
 Matcher m = p.matcher(str);
 if (m.find()) {
  return true;
 }
 return false;
}

지침:

import java.util.regex.Matcher;
import java.util.Pattern;

2. 중국어 필터링


/**
 * 过滤掉中文
 * @param str 待过滤中文的字符串
 * @return 过滤掉中文后字符串
 */
public static String filterChinese(String str) {
 // 用于返回结果
 String result = str;
 boolean flag = isContainChinese(str);
 if (flag) {// 包含中文
  // 用于拼接过滤中文后的字符
  StringBuffer sb = new StringBuffer();
  // 用于校验是否为中文
  boolean flag2 = false;
  // 用于临时存储单字符
  char chinese = 0;
  // 5.去除掉文件名中的中文
  // 将字符串转换成char[]
  char[] charArray = str.toCharArray();
  // 过滤到中文及中文字符
  for (int i = 0; i < charArray.length; i++) {
   chinese = charArray[i];
   flag2 = isChinese(chinese);
   if (!flag2) {// 不是中日韩文字及标点符号
    sb.append(chinese);
   }
  }
  result = sb.toString();
 }
 return result;
}

문서 참조: java 중국어 및 특수 문자 확인

3.

rreee

위 내용은 Java는 문자열에 중국어 문자가 포함되어 있는지 여부를 어떻게 확인하고 중국어 문자를 필터링합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.