正则表达式
正则表达式常用方法
代码如下(示例):
- 校验是否为正整数
public static Boolean checkStringPositiveNum(String val) {
if (StringUtils.isBlank(val)) {
return false;
}
Pattern pattern = compile("[0-9]*");
return !pattern.matcher(val).matches();
}
2.校验是否为整数和英文,并且长度20==满足返回false
public static boolean checkCodeFormat(String code) {
return !code.matches("[0-9a-zA-Z]{1,20}");
}
3.校验ip地址,满足返回false
public static boolean checkIp(String ip) {
return !ip.matches("^((2[0-4]\d|25[0-5]|[01]?\d\d?)\.){3}(2[0-4]\d|25[0-5]|[01]?\d\d?)$");
}
4.判断汉字长度20
public static boolean getWordCountRegex(String value) {
int valueLength = 0;
String chinese = "[u0391-uFFE5]";
/* 获取字段值的长度,如果含中文字符,则每个中文字符长度为2,否则为1 */
for (int i = 0; i < value.length(); i++) {
/* 获取一个字符 */
String temp = value.substring(i, i + 1);
/* 判断是否为中文字符 */
if (temp.matches(chinese)) {
/* 中文字符长度为2 */
valueLength += 2;
} else {
/* 其他字符长度为1 */
valueLength += 1;
}
}
return valueLength > 40;
}
5.校验字符串中是否包含中文
public static Boolean checkStringIsContainsChinese(String val) {
Pattern p = compile("[u4e00-u9fa5]");
Matcher matcher = p.matcher(val);
return matcher.find();
}
6.校验BigDecimal长度是否超长 整数位 小数位
public static Boolean checkBigDecimalLength(BigDecimal val, int intBits, int decimalBits) {
if (val == null || val.compareTo(BigDecimal.valueOf(0)) == 0) {
return false;
}
if (val.compareTo(BigDecimal.valueOf(0)) == -1) {
return true;
}
String valStr = val.toString();
String[] vals = valStr.split("\.");
if (vals[0].length() > intBits) {
return true;
}
if (vals.length == 2 && vals[1].length() > decimalBits) {
return true;
}
return false;
}
7.校验日期格式是否正确
public static boolean checkDate(String val) {
try {
String rexp = "^((\d{2}(([02468][048])|([13579][26]))[\-\/\s]?((((0?[13578])|(1[02]))[\-\/\s]?" +
"((0?[1-9])|([1-2][0-9])|(3[01])))|(((0?[469])|(11))[\-\/\s]?((0?[1-9])|([1-2][0-9])|(30)))|" +
"(0?2[\-\/\s]?((0?[1-9])|([1-2][0-9])))))|(\d{2}(([02468][1235679])|([13579][01345789]))[\-\/\s]" +
"?((((0?[13578])|(1[02]))[\-\/\s]?((0?[1-9])|([1-2][0-9])|(3[01])))|(((0?[469])|(11))[\-\/\s]?((0?[1-9])|" +
"([1-2][0-9])|(30)))|(0?2[\-\/\s]?((0?[1-9])|(1[0-9])|(2[0-8]))))))";
if (!val.matches(rexp)) {
return true;
}
} catch (Exception e) {
return true;
}
return false;
}
8.判断是否全是数字
public static boolean isNumber(String str) {
for (int i = 0; i < str.length(); i++) {
if (!Character.isDigit(str.charAt(i))) {
return false;
}
}
return true;
}
总结
提示:java常用开发工具 。工作不易,各自努力
最后
以上就是有魅力灰狼最近收集整理的关于java正则表达式校验是否为正整数正则表达式总结的全部内容,更多相关java正则表达式校验是否为正整数正则表达式总结内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复