TA的每日心情 | 开心 2021-3-12 23:18 |
---|
签到天数: 2 天 [LV.1]初来乍到
|
- 徒弟:正则的字符组,学习完了,还有什么呢?
- 师傅:下面看看量词吧。
- 量词:
- l 作用:限定之前的字符出现的次数
- l 形式:
- *:之前的字符可以出现0次到无穷多次
- +:之前的字符至少需要出现1次
- ?:之前的字符至多只能出现1次
- 例子:
- public class GeneralOne {
- public static void main(String[] args) {
- String[] strs = new String[] { "", "a", "aa", "aaa"};
- String regex = "a*";
- String regex2 = "a?";
- String regex3 = "a+";
- for (String string : strs) {
- if(regexMatch(string,regex)){
- System.out.println(string +"能够匹配正则:" + regex);
- }else{
- System.out.println(string +"不能够匹配正则:" + regex);
- }
- }
- for (String string : strs) {
- if(regexMatch(string,regex2)){
- System.out.println(string +"能够匹配正则:" + regex2);
- }else{
- System.out.println(string +"不能够匹配正则:" + regex2);
- }
- }
- for (String string : strs) {
- if(regexMatch(string,regex3)){
- System.out.println(string +"能够匹配正则:" + regex3);
- }else{
- System.out.println(string +"不能够匹配正则:" + regex3);
- }
- }
- }
- private static boolean regexMatch(String s, String regex) {
- return s.matches(regex);
- }
- }
复制代码 运行结果:
能够匹配正则:a*
a能够匹配正则:a*
aa能够匹配正则:a*
aaa能够匹配正则:a*
能够匹配正则:a?
a能够匹配正则:a?
aa不能够匹配正则:a?
aaa不能够匹配正则:a?
不能够匹配正则:a+
a能够匹配正则:a+
aa能够匹配正则:a+
aaa能够匹配正则:a+
区间量词:
l作用:限定之前的字符出现的次数
形式:
{min,max}
{min,}
{number}
* = {0,}
+ = {1,}
? = {0,1}
用\d验证数字字符串
{2}表示出现2次
例子:
- public class GeneralTwo {
- public static void main(String[] args) {
- String[] strs = new String[] { "", "a", "aa", "aaa","aaaa","aaaaa"};
- String regex = "a{2,4}";
- String regex2 = "a{2,}";
- String regex3 = "a{3}";
- for (String string : strs) {
- if(regexMatch(string,regex)){
- System.out.println(string +"能够匹配正则:" + regex);
- }else{
- System.out.println(string +"不能够匹配正则:" + regex);
- }
- }
- for (String string : strs) {
- if(regexMatch(string,regex2)){
- System.out.println(string +"能够匹配正则:" + regex2);
- }else{
- System.out.println(string +"不能够匹配正则:" + regex2);
- }
- }
- for (String string : strs) {
- if(regexMatch(string,regex3)){
- System.out.println(string +"能够匹配正则:" + regex3);
- }else{
- System.out.println(string +"不能够匹配正则:" + regex3);
- }
- }
- }
- private static boolean regexMatch(String s, String regex) {
- return s.matches(regex);
- }
- }
复制代码 运行结果:
不能够匹配正则:a{2,4}
a不能够匹配正则:a{2,4}
aa能够匹配正则:a{2,4}
aaa能够匹配正则:a{2,4}
aaaa能够匹配正则:a{2,4}
aaaaa不能够匹配正则:a{2,4}
不能够匹配正则:a{2,}
a不能够匹配正则:a{2,}
aa能够匹配正则:a{2,}
aaa能够匹配正则:a{2,}
aaaa能够匹配正则:a{2,}
aaaaa能够匹配正则:a{2,}
不能够匹配正则:a{3}
a不能够匹配正则:a{3}
aa不能够匹配正则:a{3}
aaa能够匹配正则:a{3}
aaaa不能够匹配正则:a{3}
aaaaa不能够匹配正则:a{3}
源码下载:http://file.javaxxz.com/2014/10/30/000027546.zip |
|