importjava.util.regex.Matcher;importjava.util.regex.Pattern;public classStrValidate {//纯数字

private static String DIGIT_REGEX = "[0-9]+";//含有数字

private static String CONTAIN_DIGIT_REGEX = ".*[0-9].*";//纯字母

private static String LETTER_REGEX = "[a-zA-Z]+";//包含字母

private static String CONTAIN_LETTER_REGEX = ".*[a-zA-z].*";//纯中文

private static String CHINESE_REGEX = "[\u4e00-\u9fa5]";//仅仅包含字母和数字

private static String LETTER_DIGIT_REGEX = "^[a-z0-9A-Z]+$";private static String CHINESE_LETTER_REGEX = "([\u4e00-\u9fa5]+|[a-zA-Z]+)";private static String CHINESE_LETTER_DIGIT_REGEX = "^[a-z0-9A-Z\u4e00-\u9fa5]+$";/*** 判断字符串是否仅含有数字和字母

*

*@paramstr

*@return

*/

public static booleanisLetterDigit(String str) {returnstr.matches(LETTER_DIGIT_REGEX);

}/*** 是否为汉字,不包括标点符号

*

*@paramcon

*@returntrue 是汉字*/

public static booleanisChinese(String con) {

Pattern pattern=Pattern.compile(CHINESE_REGEX);for (int i = 0; i < con.length(); i = i + 1) {if (!pattern.matcher(

String.valueOf(con.charAt(i))).find()) {return false;

}

}return true;

}/*** 用正则表达式判断字符串中是否

* 仅包含英文字母、数字和汉字

*

*@paramstr

*@return

*/

public static booleanisLetterDigitOrChinese(String str) {returnstr.matches(CHINESE_LETTER_DIGIT_REGEX);

}/*** 姓名中可包含汉字和字母,无其它字符

*

*@parampassengerName

*@return

*/

public static booleancheckChineseLetter(String passengerName) {

Pattern pattern=Pattern.compile(CHINESE_LETTER_REGEX);

Matcher matcher=pattern.matcher(passengerName);if(matcher.matches()) {//不包含特殊字符

return true;

}else{//包含了特殊字符

return false;

}

}/*** 判断一个字符串是否包含标点符号(中文或者英文标点符号),true 包含。

* 原理:对原字符串做一次清洗,清洗掉所有标点符号。

* 此时,如果入参 ret 包含标点符号,那么清洗前后字符串长度不同,返回true;否则,长度相等,返回false。

*

*@paramret

*@returntrue 包含中英文标点符号*/

public static booleancheckPunctuation(String ret) {boolean b = false;

String tmp=ret;//replaceAll里面的正则匹配可以清空字符串中的中英文标点符号,只保留数字、英文和中文。

tmp = tmp.replaceAll("\\p{P}", "");if (ret.length() !=tmp.length()) {

b= true;

}returnb;

}public static booleanisDigit(String ret) {returnret.matches(DIGIT_REGEX);

}public static booleanisLetter(String ret) {returnret.matches(LETTER_REGEX);

}public static booleanhasDigit(String ret) {returnret.matches(CONTAIN_DIGIT_REGEX);

}public static booleanhasLetter(String ret) {returnret.matches(CONTAIN_LETTER_REGEX);

}public static voidmain(String[] args) {//System.out.println(isLetterDigitOrChinese("33dd33") + " ------- 麦迪娜·买买提 ---------");//System.out.println(isChinese("麦迪娜·买买提"));//System.out.println(isChinese("这个X") + " checkChineseLetter ");//System.out.println(isChinese("checkChineseLetter"));//System.out.println(isChinese("checkChineseLetter3"));System.out.println(hasDigit("99999"));

System.out.println(hasDigit("9999舅舅9"));

}

}

java 判断字符串是否包含字母_Java中判断某一字符串是否包含数字、字母和中文...相关推荐

  1. java 判断是否是字母_java中判断是否是字母

    java判断字符串是否是字母:记录一个方法,用来判断一个字串中字符是否全为字母 public class MainClass { public static void main(String[] ar ...

  2. java判断一个对象是否为空_Java中判断对象是否为空的方法的详解

    首先来看一下工具StringUtils的判断方法: 一种是org.apache.commons.lang3包下的: 另一种是org.springframework.util包下的.这两种StringU ...

  3. java byte数组转化为流_java中字节数组和字符串、IO流和字节数组之间的转换

    在实际开发中经常会碰到乱码问题: 首先查看系统支持的编码方式,默认的编码方式 //检查java支持的编码 System.out.println(Charset.availableCharsets(). ...

  4. java怎么判断一个char是汉字_JAVA中判断char是否是中文的几种方法

    展开全部 对照最新版本的 Unicode (最少是62616964757a686964616fe59b9ee7ad9431333335343330 6.0  版本,不知道现在是否有 7.0) 里面找从 ...

  5. java 路径不存在则创建_java中判断目录是否存在,若不存在则创建

    知识补充: endsWith()方法用于测试字符串是否以指定的后缀结束. 更多学习视频推荐:java语言入门 实例://String dirName = "D:/work/temp/temp ...

  6. 关于JAVA POI解析WPS docx文档中的table(复杂表格包含单元格横向,纵向的合并)

    关于JAVA POI解析WPS docx文档中的table(复杂表格包含单元格横向,纵向的合并) 首先,关于poi解析表格先阅读一篇他人的博客 使用poi读取word2007(.docx)中的复杂表格 ...

  7. java 判断 中文字符_java中判断字符串中是否有中文字符

    package com.meritit.test; public class TestChart { public static void main(String[] args) throws Exc ...

  8. JAVA中equals空_Java中为什么查询空字符串跟判断是否为null的时候可以不用equals?...(亲测)

    if(id!=null&&id!="") 代码中经常这样写,空字符串跟null 都不用equals吗? 首先,你的 id!="" 这种写法是错误 ...

  9. java 判断是否中文字符_java中判断字符串是否是中文的方法

    java中判断字符串是否是中文的方法 发布时间:2020-06-25 14:07:38 来源:亿速云 阅读:79 作者:Leah 本篇文章为大家展示了java判断字符串是否为中文的方法,代码简明扼要并 ...

最新文章

  1. nginx conf 文件配置
  2. 怕了么?三年后,人工智能将彻底改变前端开发?
  3. POJ 3614-Sunscreen
  4. linux printk 源码,Printk原理简介
  5. 2013年全球ERP市场格局(Gartner)
  6. 对于牛老师作业陈老师作业补充(老陈、小石头的典型用户、用例图、场景)...
  7. [html] 编写html时,你有没有用过Emmet插件呢?说说它的优点及规则有哪些?
  8. 良好的开端是成功的第一步———构建程序
  9. 蓝桥杯 BASIC-22 基础练习 FJ的字符串
  10. 机器学习初探(手写数字识别)matlab读取数据集
  11. 计算机网络常见面试题
  12. jsplacement1.3中文汉化版
  13. 笔记整理 之 ERROR 1336 (0A000)问题记录
  14. APS计划排程和生产排产系统,包含哪些排程算法?
  15. SiamRPN++相对于SiamRPN的改进
  16. 蓝桥杯试题 基础练习 十六进制转八进制
  17. python tornado异步_python tornado异步性能测试
  18. Python—计算方差、标准差
  19. 将远程桌面连接的快捷方式发送到电脑桌面上
  20. 日语自学资料-N5(免费下载)

热门文章

  1. maven 设置打包路径为模块_Maven项目的子模块不能打成jar包输出到lib目录
  2. P1309 [NOIP2011 普及组] 瑞士轮
  3. 【Transformers】第 7 章 :问答
  4. 使用SQLyog将Excel数据导入mysql数据库
  5. Android app内部下载安装
  6. AI展现唇语识别能力,大数据功不可没
  7. NMOS管与PMOS管区别
  8. eSIM(Embedded-SIM)-嵌入式SIM卡
  9. 腾讯android web,Android 使用腾讯TBS
  10. jedis实现订阅发布-publish/subscribe