Pattern和Matcherjava
String上可以使用正則表達式的操做,其實是利用了java.util.regex.Pattern與java.util.regex.Matcher的功能。當調用String的matches()方法時,其實是調用Pattern的靜態方法matches(),這個方法會返回boolean值,表示字符串是否符合正則表達式。正則表達式
若是想要將正則表達式視爲一個對象來重複使用,可使用Pattern的靜態方法compile()進行編譯。compile()方法會返回一個Pattern的實例,這個實例表明正則表達式,以後就能夠重複使用Pattern實例的matcher()方法來返回一個Matcher的實例,表明符合正則式的實例,這個實例上有一些尋找符合正則式條件的方法可供操做。範例6.11做了示範。對象
** 範例6.11UsePatternMatcher.java
import java.util.regex.*;字符串
public class UsePatternMatcher {
public static void main(String[] args) {
String phones1 =
"Justin 的手機號碼:0939-100391\n" +
"momor 的手機號碼:0939-666888\n";
Pattern pattern = Pattern.compile(".*0939-\\d{6}");
Matcher matcher = pattern.matcher(phones1);編譯
while(matcher.find()) {
System.out.println(matcher.group());
}
String phones2 =
"caterpillar 的手機號碼:0952-600391\n" +
"bush 的手機號碼:0939-550391";
matcher = pattern.matcher(phones2);class
while(matcher.find()) {
System.out.println(matcher.group());
}
}
}import