String content = 一个字符串; String pattern = 正则表达式; boolean isMatch = Pattern.matches(pattern, content);
Pattern pattern = Pattern.compile(正则表达式); Matcher matcher = pattern.matcher("文字内容"); while (matcher.find()) { //查找到的内容 group() 查找正则中的组, 每一对括号为一组 //例如 "policyNo>(P\\w+)<", group(1)查到的就是 P\\w+ 匹配到的内容 //例如 "policyNo>(P\\w+)<>(P\\[0-9]+)", group(2)查到的就是 P\\[0-9]+ 匹配到的内容 String group = matcher.group(1); }
格式: 位置 匹配字符串 重复次数(不写为一次)
. 匹配除换行符以外的任意字符 \w 匹配字母或数字或汉字and下划线, 等效[A-Za-z0-9_] \s 匹配任意的空白符 \d 匹配数字 =============反义============== \W 匹配任意不是字母, 数字, 下划线, 汉字的字符. 等效[^A-Za-z0-9_] \S 匹配任意不是空白符的字符 \D 匹配任意非数字的字符
\b 单词的开头或结尾, 也就是单词的分界处 ^ 匹配字符串的开始 $ 匹配字符串的结束 \G 上一个匹配的结尾(本次匹配开始) \A 字符串开头(类似^, 但不受处理多行选项的影响) \Z 字符串结尾或行尾(不受处理多行选项的影响) \z 字符串结尾(类似$, 但不受处理多行选项的影响)
* 重复零次或更多次 + 重复一次或更多次 ? 重复零次或一次 {n} 重复n次 {n,} 重复n次或更多次 {n,m} 重复n到m次
[] 表示要匹配的范围 [0-9] 匹配0~9的数字,同\d [a-z] 匹配所有小写字母 [a-zA-Z] 匹配所有字母 [a-z0-9A-Z_] 等同于\w [123] 匹配1或者2或者3 (aa|bb|cc) 匹配aa或者bb或者cc
\ 将下一字符标记为特殊字符、文本、反向引用或八进制转义符。 例如:"n"匹配字符"n"。"\n"匹配换行符。序列"\\\\"匹配"\","\\("匹配"("。 需要转义的字符:$, (, ), *, +, ., [, ], ?, \, ^, {, }, |
email: ^\w+(\.\w+)*@\w+(\.\w+)+$ 2位小数数字: \d+\.\d{2}$ url: ^(https?://)?(\w+\.)+[a-zA-Z]+$
本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。
我来说两句