Java 正則表示式中的貪婪限定符
貪婪限定符儘可能重複指定令牌,然後引擎回溯,貪婪限定符放棄匹配以最終找到所需匹配。
正則表示式 "(\w+)(\d)(\w+)" 用於在字串 "EarthHas1Moon" 中查詢匹配。
如下所示演示此功能的程式
示例
import java.util.regex.Matcher; import java.util.regex.Pattern; public class Demo { public static void main(String args[]) { String str = "EarthHas1Moon"; String regex = "(\w+)(\d)(\w+)"; Pattern p = Pattern.compile(regex); Matcher m = p.matcher(str); m.find(); System.out.println(m.group(1)); System.out.println(m.group(2)); System.out.println(m.group(3)); } }
輸出
EarthHas 1 Moon
現在讓我們瞭解上面的程式。
正則表示式為“(\w+)(\d)(\w+)”。在字串序列 "EarthHas1Moon" 中搜索該表示式。find() 方法用於查詢正則表示式是否在輸入序列中,並列印所需的結果。演示此功能的程式碼片段如下
String str = "EarthHas1Moon"; String regex = "(\w+)(\d)(\w+)"; Pattern p = Pattern.compile(regex); Matcher m = p.matcher(str); m.find(); System.out.println(m.group(1)); System.out.println(m.group(2)); System.out.println(m.group(3));
廣告