JAVA表达式的规则
- 正则表达式是一个字符串。
- ^ 表示字符串的开始。
- $ 表示字符串的结尾。
- . 表示除\n(换行)以外的任意一个字符。
- [] 表示条件限定在范围内的任意一个字符
- [a-z] 表示a-z范围内的任意一个字符
- [A-Z] 表示A-Z范围内的任意一个字符
- [0-9] 表示0-9范围内的任意一个字符
- [中文] 表示范围内的任意一个中文字符
- [0-9a-z] 表示0-9或a-z范围内的任意一个字符
- [0-9[a-z]] 表示0-9或a-z范围内的任意一个字符
- [a-k&&[h-z]] 表示a-k和h-z交集范围内的任意一个字符
- [^] 表示条件限定在范围外的任意一个字符
- [^a-z] 表示a-z范围外的任意一个字符
- [^A-Z] 表示A-Z范围外的任意一个字符
- [^0-9] 表示0-9范围外的任意一个字符
- [^0-9a-z] 表示0-9和a-z范围外的任意一个字符
- [^0-9[a-z] 表示0-9范围之外或a-z范围内的任意一个字符
- * 表示匹配0个以上
- + 表示匹配1个以上
- ? 表示匹配0个或一个
- | 表示或匹配方法,比如abc|cde表示匹配abc或者cde中的一个
- \ 表示转译,它可以将特殊字符转译为字面值
- {6} 表示匹配刚好6个
- {2,} 表示匹配2以上
- {2,4} 表示匹配2-4个
- () 表示组合,将正则表达式进行分组
- \d 表示任意一个数字类型的字符,相当于[0-9]
- \D 表示任意一个非数字类型的字符,相当于[^0-9]
- \s 表示任意一个空白字符,相当于[/t/n/x0B/f/r]
- \S 表示任意一个非空白字符,相当于[/t/n/x0B/f/r]
- \w 表示任意一个单独字符,相当于[a-zA-Z_0-9]
- \W 表示任意一个非单独字符,相当于[^a-zA-Z_0-9]
- \b 表示单词的边界
- \B 表示非单词的边界
- \r 表示回车
- \n 表示换行
- \Q\E 表示将\Q和\E之间的字符变成字面值