java用正则表达式判断字符串中是否仅包含英文字母、数字和汉字_灵思致远Leansmall的博客-CSDN博客_java判断字符串只包含数字字母
生活随笔
收集整理的這篇文章主要介紹了
java用正则表达式判断字符串中是否仅包含英文字母、数字和汉字_灵思致远Leansmall的博客-CSDN博客_java判断字符串只包含数字字母
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
import java.util.regex.Matcher;
import java.util.regex.Pattern;public class StrValidate {// 純數(shù)字private static String DIGIT_REGEX = "[0-9]+";// 含有數(shù)字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]";// 僅僅包含字母和數(shù)字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]+$";/*** 判斷字符串是否僅含有數(shù)字和字母** @param str* @return*/public static boolean isLetterDigit(String str) {return str.matches(LETTER_DIGIT_REGEX);}/*** 是否為漢字,不包括標(biāo)點符號** @param con* @return true 是漢字*/public static boolean isChinese(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;}/*** 用正則表達(dá)式判斷字符串中是否* 僅包含英文字母、數(shù)字和漢字** @param str* @return*/public static boolean isLetterDigitOrChinese(String str) {return str.matches(CHINESE_LETTER_DIGIT_REGEX);}/*** 姓名中可包含漢字和字母,無其它字符** @param passengerName* @return*/public static boolean checkChineseLetter(String passengerName) {Pattern pattern = Pattern.compile(CHINESE_LETTER_REGEX);Matcher matcher = pattern.matcher(passengerName);if (matcher.matches()) {//不包含特殊字符return true;} else {//包含了特殊字符return false;}}/*** 判斷一個字符串是否包含標(biāo)點符號(中文或者英文標(biāo)點符號),true 包含。<br/>* 原理:對原字符串做一次清洗,清洗掉所有標(biāo)點符號。<br/>* 此時,如果入?yún)?ret 包含標(biāo)點符號,那么清洗前后字符串長度不同,返回true;否則,長度相等,返回false。<br/>** @param ret* @return true 包含中英文標(biāo)點符號*/public static boolean checkPunctuation(String ret) {boolean b = false;String tmp = ret;
// replaceAll里面的正則匹配可以清空字符串中的中英文標(biāo)點符號,只保留數(shù)字、英文和中文。tmp = tmp.replaceAll("\\p{P}", "");if (ret.length() != tmp.length()) {b = true;}return b;}public static boolean isDigit(String ret) {return ret.matches(DIGIT_REGEX);}public static boolean isLetter(String ret) {return ret.matches(LETTER_REGEX);}public static boolean hasDigit(String ret) {return ret.matches(CONTAIN_DIGIT_REGEX);}public static boolean hasLetter(String ret) {return ret.matches(CONTAIN_LETTER_REGEX);}public static void main(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用正則表達(dá)式判斷字符串中是否僅包含英文字母、數(shù)字和漢字_靈思致遠(yuǎn)Leansmall的博客-CSDN博客_java判斷字符串只包含數(shù)字字母
Java中判斷某一字符串是否包含數(shù)字、字母和中文 - 樓蘭胡楊 - 博客園
總結(jié)
以上是生活随笔為你收集整理的java用正则表达式判断字符串中是否仅包含英文字母、数字和汉字_灵思致远Leansmall的博客-CSDN博客_java判断字符串只包含数字字母的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 突击笔试面试(2)
- 下一篇: vmware windows7安装usb