java判斷字符串中是否包含中文并過濾中文
java判斷字符串中是否包含中文并過濾掉中文,具體內(nèi)容如下
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.regex.Pattern;
2.過濾中文
/**
* 過濾掉中文
* @param str 待過濾中文的字符串
* @return 過濾掉中文后字符串
*/
public static String filterChinese(String str) {
// 用于返回結(jié)果
String result = str;
boolean flag = isContainChinese(str);
if (flag) {// 包含中文
// 用于拼接過濾中文后的字符
StringBuffer sb = new StringBuffer();
// 用于校驗是否為中文
boolean flag2 = false;
// 用于臨時存儲單字符
char chinese = 0;
// 5.去除掉文件名中的中文
// 將字符串轉(zhuǎn)換成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;
}
說明:isChinese(char)方法見文章:java中文及特殊字符校驗
3.測試
public static void main(String[] args) {
String fileName = "test,中文";
System.out.println(filterChinese(fileName));
}
4.更多校驗請移步文章:java中文及特殊字符校驗
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
深入理解JSON及其在Java中的應(yīng)用小結(jié)
json它是一種輕量級的數(shù)據(jù)交換格式,由于其易于閱讀和編寫,同時也易于機器解析和生成,因此廣泛應(yīng)用于網(wǎng)絡(luò)數(shù)據(jù)交換和配置文件,這篇文章主要介紹了深入理解JSON及其在Java中的應(yīng)用,需要的朋友可以參考下2023-12-12
詳解SpringBoot中異步請求和異步調(diào)用(看完這一篇就夠了)
這篇文章主要介紹了SpringBoot中異步請求和異步調(diào)用問題,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下2019-04-04
Java中g(shù)et/post的https請求忽略ssl證書認證淺析
因為Java在安裝的時候,會默認導入某些根證書,所以有些網(wǎng)站不導入證書,也可以使用Java進行訪問,這篇文章主要給大家介紹了關(guān)于Java中g(shù)et/post的https請求忽略ssl證書認證的相關(guān)資料,需要的朋友可以參考下2024-01-01
基于java.lang.IllegalArgumentException異常報錯問題及解決
這篇文章主要介紹了基于java.lang.IllegalArgumentException異常報錯問題及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-03-03

