java判断字符串中是否包含中文并过滤中文

 更新时间:2017年09月07日 10:56:00   作者:Marydon  
这篇文章主要为大家详细介绍了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.regex.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;
}

说明:isChinese(char)方法见文章:java中文及特殊字符校验

3.测试

public static void main(String[] args) {
 String fileName = "test,中文";
 System.out.println(filterChinese(fileName));
}

4.更多校验请移步文章:java中文及特殊字符校验

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • Deep Module深模块之软件设计

    Deep Module深模块之软件设计

    这篇文章主要介绍了软件设计之Deep Module深模块详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-07-07
  • java连接数据库(代码分享)

    java连接数据库(代码分享)

    本文主要介绍了java连接数据库的实现方法代码。具有很好的参考价值。下面跟着小编一起来看下吧
    2017-03-03
  • selenium+java环境搭建过程推荐

    selenium+java环境搭建过程推荐

    这篇文章主要介绍了selenium+java环境搭建过程推荐,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-10-10
  • 深入理解JSON及其在Java中的应用小结

    深入理解JSON及其在Java中的应用小结

    json它是一种轻量级的数据交换格式,由于其易于阅读和编写,同时也易于机器解析和生成,因此广泛应用于网络数据交换和配置文件,这篇文章主要介绍了深入理解JSON及其在Java中的应用,需要的朋友可以参考下
    2023-12-12
  • 详解SpringBoot中异步请求和异步调用(看完这一篇就够了)

    详解SpringBoot中异步请求和异步调用(看完这一篇就够了)

    这篇文章主要介绍了SpringBoot中异步请求和异步调用问题,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-04-04
  • Java中get/post的https请求忽略ssl证书认证浅析

    Java中get/post的https请求忽略ssl证书认证浅析

    因为Java在安装的时候,会默认导入某些根证书,所以有些网站不导入证书,也可以使用Java进行访问,这篇文章主要给大家介绍了关于Java中get/post的https请求忽略ssl证书认证的相关资料,需要的朋友可以参考下
    2024-01-01
  • 深入解析kafka 架构原理

    深入解析kafka 架构原理

    Kafka使用领域非常广泛,在大数据时代kafka使用真香,LinkedIn、Microsoft和Netflix每天都用Kafka处理万亿级的信息。本文就让我们一起来大白话kafka的架构原理,感兴趣的朋友一起看看吧
    2021-11-11
  • Java算法之位图的概念和实现详解

    Java算法之位图的概念和实现详解

    这篇文章主要介绍了Java算法之位图的概念和实现详解,位图可以利用每一位来对应一个值,比如可以利用int类型的数去存储0~31这个集合的数字,如果该集合内的数字存在,则把对应的位设置位1默认为0,需要的朋友可以参考下
    2023-10-10
  • 基于idea把maven工程转换为web项目

    基于idea把maven工程转换为web项目

    这篇文章主要介绍了基于idea把maven工程转换为web项目,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-04-04
  • 基于java.lang.IllegalArgumentException异常报错问题及解决

    基于java.lang.IllegalArgumentException异常报错问题及解决

    这篇文章主要介绍了基于java.lang.IllegalArgumentException异常报错问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-03-03

最新评论