国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

pattern

2019-11-17 03:57:43
字體:
供稿:網(wǎng)友
String上可使用正則表達(dá)式的操作,實(shí)際上是利用了java.util.regex.Pattern與 java.util.regex.Matcher的功能。當(dāng)調(diào)用String的matches()方法時(shí),實(shí)際上是調(diào)用Pattern的靜態(tài)方法 matches(),這個(gè)方法會(huì)返回boolean值,表示字符串是否符合正則表達(dá)式。
如果想要將正則表達(dá)式視為一個(gè)對(duì)象來重復(fù)使用,可以使用Pattern的靜態(tài)方法compile()進(jìn)行編譯。compile()方法會(huì)返回一個(gè)Pattern的實(shí)例,這個(gè)實(shí)例代表正則表達(dá)式,之后就可以重復(fù)使用Pattern實(shí)例的matcher()方法來返回一個(gè)Matcher的實(shí)例,代表符合正則式的實(shí)例,這個(gè)實(shí)例上有一些尋找符合正則式條件的方法可供操作。范例6.11作了示范。
** 范例6.11UsePatternMatcher.java
import java.util.regex.*;

public class UsePatternMatcher {
    public static void main(String[] args) {
        String phones1 =
              "Justin 的手機(jī)號(hào)碼:0939-100391/n" +
              "momor 的手機(jī)號(hào)碼: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 的手機(jī)號(hào)碼:0952-600391/n" +
             "bush 的手機(jī)號(hào)碼:0939-550391";
        
        matcher = pattern.matcher(phones2);

        while(matcher.find()) {
            System.out.println(matcher.group());
        }
    }
}
范例6.11會(huì)尋找手機(jī)號(hào)碼為0939開頭的號(hào)碼,假設(shè)號(hào)碼來源不止一個(gè)(如phones1、phones2),則可以編譯好正則表達(dá)式并返回一個(gè)Pattern對(duì)象,之后就可以重復(fù)使用這個(gè)Pattern對(duì)象,在比對(duì)時(shí)使用matcher()返回符合條件的Matcher實(shí)例。find()方法表示是否有符合的字符串,group()方法則可以將符合的字符串返回。程序的執(zhí)行結(jié)果如下:

Justin 的手機(jī)號(hào)碼:0939-100391
momor 的手機(jī)號(hào)碼:0939-666888
bush 的手機(jī)號(hào)碼:0939-550391

下面使用Pattern與Matcher改寫范例6.9,讓程序可以返回符合正則式的字符串,而不是返回不符合的字符串。
** 范例6.12RegularExpressionDemo2.java
import java.util.regex.*;

public class RegularExpressionDemo2 {
    public static void main(String[] args) {
        String text = "abcdebcadxbc";

        Pattern pattern = Pattern.compile(".bc");
        Matcher matcher = pattern.matcher(text);

        while(matcher.find()) {
            System.out.println(matcher.group());
        }
        System.out.println();
    }
}

style='font-family:宋體'>執(zhí)行結(jié)果:  

abc
ebc
xbc



本文來自CSDN博客,轉(zhuǎn)載請(qǐng)標(biāo)明出處:http://blog.csdn.net/wofe912/archive/2009/12/18/5030571.aspx
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 象州县| 淳化县| 德兴市| 鹤壁市| 瑞安市| 安新县| 托克逊县| 米泉市| 德昌县| 吉安县| 广宗县| 靖州| 西华县| 江华| 太湖县| 沾益县| 宕昌县| 集安市| 永安市| 巢湖市| 大化| 长沙县| 邵东县| 乐安县| 肇东市| 温泉县| 太和县| 普安县| 林州市| 茶陵县| 隆子县| 金门县| 金乡县| 襄垣县| 平谷区| 航空| 梁山县| 罗甸县| 宁安市| 东平县| 平顺县|