1、判断字符串 是否为纯字母
/**
* 判断是否为 纯字母
* @param str String
* @return boolean
*/
public static boolean isLetter(String str) {
String p = "^[a-zA-Z]*$";
return str.matches(p);
}
//测试
@Test
public void testLetter() {
String str = "abc";
System.out.println(str + " 是纯字母:" + isLetter(str));
str = "123";
System.out.println(str + " 是纯字母:" + isLetter(str));
str = "123abc";
System.out.println(str + " 是纯字母:" + isLetter(str));
}
//print
abc 是纯字母:true
123 是纯字母:false
123abc 是纯字母:false
2、判断字符串 是否为纯数字
/**
* 判断字符串是否是纯数字
* @param str String
* @return boolean
*/
public static boolean isNumber(String str) {
String p = "^\\-?[0-9]+$ *";
return str.matches(p);
}
@Test
public void testNumber() {
String str = "abc";
System.out.println(str + " 是纯数字:" + isNumber(str));
str = "123";
System.out.println(str + " 是纯数字:" + isNumber(str));
str = "123abc";
System.out.println(str + " 是纯数字:" + isNumber(str));
}
//print
abc 是纯数字:false
123 是纯数字:true
123abc 是纯数字:false
3、判断字符串 是由字母和数字组成
/**
* 是字符和数字 6-20位
* @param str String
* @return boolean
*/
public static boolean isLetterWithNumber(String str) {
String p = "^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{6,20}$";
return str.matches(p);
}
@Test
public void test3() {
String str = "abc";
System.out.println(str + " 是字母和数字:" + isLetterWithNumber(str));
str = "123";
System.out.println(str + " 是字母和数字:" + isLetterWithNumber(str));
str = "123abc";
System.out.println(str + " 是字母和数字:" + isLetterWithNumber(str));
}
//print
abc 是字母和数字:false
123 是字母和数字:false
123abc 是字母和数字:true
4、判断字符串 是由字母和数字组成 并且以 字母开头
/**
* 是字符和数字 6-20位 并且以字母开头
* @param str String
* @return boolean
*/
public static boolean isLetterStartWithNumber(String str) {
String p = "^([A-Za-z])(?![a-zA-Z]+$)[0-9A-Za-z]{5,20}$";
return str.matches(p);
}
@Test
public void test4() {
String str = "abcdefg";
System.out.println(str + " 是字母和数字, 字母开头:" + isLetterStartWithNumber(str));
str = "123";
System.out.println(str + " 是字母和数字, 字母开头:" + isLetterStartWithNumber(str));
str = "123abc";
System.out.println(str + " 是字母和数字, 字母开头:" + isLetterStartWithNumber(str));
str = "a123abc";
System.out.println(str + " 是字母和数字, 字母开头:" + isLetterStartWithNumber(str));
}
//print
abcdefg 是字母和数字, 字母开头:false
123 是字母和数字, 字母开头:false
123abc 是字母和数字, 字母开头:false
a123abc 是字母和数字, 字母开头:true
5、判断是否为 手机号
/**
* 是手机号
* @param str String
* @return boolean
*/
public static boolean isPhoneNumber(String str) {
String p = "^[1][3-9]\\d{9}$";
return str.matches(p);
}
@Test
public void test5() {
String str = "12233334444";
System.out.println(str + " 是手机号:" + isPhoneNumber(str));
str = "13167890000";
System.out.println(str + " 是手机号:" + isPhoneNumber(str));
str = "131678900005";
System.out.println(str + " 是手机号:" + isPhoneNumber(str));
str = "1316789abcd";
System.out.println(str + " 是手机号:" + isPhoneNumber(str));
}
//print
12233334444 是手机号:false
13167890000 是手机号:true
131678900005 是手机号:false
1316789abcd 是手机号:false
网友评论