参考文档
JavaSE Doc
调用
regex
代码语言:javascript复制package regex;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
/**
* @Author bennyrhys
* @Date 2/7/21 2:24 PM
*/
public class Number {
public static void main(String[] args) {
// boolean number = isNumber("12a43");
// System.out.println(number);
}
private static boolean isNumber(String str) {
//1.把字符串类型的正则表达式,编译成一个正则模式
// Pattern pattern = Pattern.compile("\d ");
//2.向上转型String->CharSequence
// Matcher matcher = pattern.matcher(str);
//3.使用这个正则模式去匹配字符串
// boolean isMatches = matcher.matches();
boolean isMatches = Pattern.matches("\d ", str);
return isMatches;
}
}
String方法也行
切割
匹配单个字符
代码语言:javascript复制// 字符
// 匹配单个字符 x n换行 t制表 r回车
// boolean isMatches = Pattern.matches("a", "a");
// 字符组
// 匹配[abc]的中的一个
// 匹配除abc的任意[^abc]
// 匹配a-z小写[a-z] 大写[A-Z] 大写或小写[a-zA-Z]
// 小写a-d,m-p[a-d[m-p]] 等价 [a-dm-p] 如果表示并且 [a-z&&[def]]
// 直接在里面加[ad-z] [a-zA-Z_0-9]
// 预定义字符组
// .任意字符
// d数字0-9 D所以非0-9
// w匹配[0-9_a-zA-Z] w取反
// s空格 S非空格
匹配多个字符
匹配子字符串 find从左向右
注意()形成组,. 而.不能直接写
类型比较 贪婪 勉强 占有
组
逻辑或
必须换()
边界运算符
注意:单词边界是空格
电话号
匹配城市
邮箱
端口号
端口强校验(范围[1,65535])
小于范围 校验不通过 测试成功
等于范围 校验通过 测试成功
大于范围 校验通过 测试成功
代码语言:javascript复制"^([1-9][0-9]{0,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]{1}|6553[0-5])$"