文章目录
参考文档
调用
regex
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方法也行
切割
匹配单个字符
// 字符
// 匹配单个字符 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从左向右
注意()形成组,\. 而.不能直接写
类型比较 贪婪 勉强 占有
组
逻辑或
必须换()
边界运算符
注意:单词边界是空格