Java正则表达式
正则表达式的规则
“abc” 匹配字符串abc
[abc] 匹配[]里任意一个字符
[a-z]: 匹配所有小写字母中的任意一个字符
[A-Z]: 匹配所有大写字母中的任意一个字符
[a-zA-Z]: 匹配所有大小写字母中的 任意一个字符
[0-9]: 匹配所有数字中的任意一个数字
[^0-9] 匹配数字之外中的任意一个字符 (^ 取反操作)
\d :匹配所有数字中的任意一个数字 等同于 [0-9]
\D : 匹配所有非数字中的任意一个字符
\w: 匹配数字 字母 下划线中的任意一个字符
\W: 匹配 数字 字母 下划线 以外中的任意一个字符
\s: 匹配空白字符(空格 tab 换行符)中的任意一个字符
\S: 匹配空白字符之外的任意一个字符
.:匹配换行符(\n)以外的任意一个字符
?匹配 0-1个字符 {0,1}
+ 匹配1-n个字符 {1,}
* 匹配0-n字符 {0,}
{n} 固定长度n个
{n,} 最少长度n,最大不限制
{n,m} 最少长度n,最大m
() 子表达式
| 或者
^ 以什么内容开头
$ 以什么结尾
例:以a开头数字在中间以b结尾
String st1=”a1122b”;
st1.matchs(regex:”a\\d*b”) 匹配则返回true
qq邮箱正则
regex:”\\d+@(qq|163)\\.com”
手机号
以1开头,357689是第二位
regex:”1[3,5,6,7,8,9]\\d{9}”
年龄0-150
“\\d|\\d{2}|1[0-4]\\d|150”
1.通过正则类pattern、Matcher类
Pattern的compile()获取pattern对象
import java.util.regex.Pattern;
Pattern pattern=Pattern.compile(“正则”);//放在方法之外
Matcher match=pattern.macher(input:“字符串”);//返回Marcher对象
if(match.matches()){“匹配成功“}
2.
Pattern.matches(regex:””,input:””);成功返回值是true
原文:https://www.cnblogs.com/ldlihmk1314/p/11335231.html