Java正则表达式主要有两个类:Pattern和Matcher。
Pattern表示正则表达式的编译形式。
Matcher表示执行匹配操作的引擎。
下面通过几个例子展示两个类的使用方法。
matches方法:
package com.zzj.regex;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class MatchesTest {
public static void main(String[] args) {
Pattern pattern = Pattern.compile("\\w+");
Matcher matcher = pattern.matcher("abc123");
System.out.println(matcher.matches()); // 尝试将整个字符序列与该模式匹配
matcher = pattern.matcher("abc&&123");
System.out.println(matcher.matches());
}
}
测试结果:
true
false
find方法:
package com.zzj.regex;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class FindTest {
public static void main(String[] args) {
Pattern pattern = Pattern.compile("\\w+");
Matcher matcher = pattern.matcher("abc&&123");
System.out.println(matcher.find()); // 查找匹配该模式的下一个子序列
System.out.println(matcher.find());
System.out.println(matcher.find());
System.out.println(matcher.find());
}
}
测试结果:
true
true
false
false
group方法1:
package com.zzj.regex;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
/**
* 打印匹配到的子序列
* @author Administrator
*
*/
public class GroupTest1 {
public static void main(String[] args) {
Pattern pattern = Pattern.compile("\\w+");
Matcher matcher = pattern.matcher("abc&&123");
while(matcher.find()){
System.out.println(matcher.group());
}
}
}
测试结果:
abc
123
group方法2:
package com.zzj.regex;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
/**
* 分组
* @author Administrator
*
*/
public class GroupTest2 {
public static void main(String[] args) {
Pattern pattern = Pattern.compile("([a-z]+)([0-9]+)");
Matcher matcher = pattern.matcher("abc123&&def456");
while(matcher.find()){
System.out.println(matcher.group(0)); // 等价于matcher.group()
System.out.println(matcher.group(1));
System.out.println(matcher.group(2));
}
}
}
测试结果:
abc123
abc
123
def456
def
456
正则怎么用的|java怎么用正则?Java正则表达式的基本用法
http://m.bbyears.com/aspjiaocheng/121207.html
推荐访问: