600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > java 判断字符串是否包含字母_Java中判断某一字符串是否包含数字 字母和中文...

java 判断字符串是否包含字母_Java中判断某一字符串是否包含数字 字母和中文...

时间:2019-12-21 06:21:37

相关推荐

java 判断字符串是否包含字母_Java中判断某一字符串是否包含数字 字母和中文...

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=pile(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=pile(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"));

}

}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。