Java 正則表示式中的 Matcher 重置
Matcher 可使用 java.util.regex.Matcher.reset() 方法進行重置。此方法返回重置後的 Matcher。
以下程式展示了 Java 正則表示式中的方法 Matcher.reset()
示例
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class MainClass {
public static void main(String args[]) {
Pattern p = Pattern.compile("(a*b)");
Matcher m = p.matcher("caaabcccab");
System.out.println("The input string is: caaabcccab");
System.out.println("The Regex is: (a*b)");
System.out.println();
while (m.find()) {
System.out.println(m.group());
}
m.reset();
System.out.println("
The Matcher is reset");
while (m.find()) {
System.out.println(m.group());
}
}
}輸出
The input string is: caaabcccab The Regex is: (a*b) aaab ab The Matcher is reset aaab ab
現在讓我們來了解一下上面的程式。
在字串序列 "caaabcccab" 中搜索子序列“(a*b)”。然後使用 find() 方法查詢子序列是否在輸入序列中,並列印所需結果。使用 Matcher.reset() 方法重置 Matcher。然後再次使用 find() 方法,並列印所需結果。
演示此操作的程式碼片段如下
Pattern p = Pattern.compile("(a*b)");
Matcher m = p.matcher("caaabcccab");
System.out.println("The input string is: caaabcccab");
System.out.println("The Regex is: (a*b)");
System.out.println();
while (m.find()) {
System.out.println(m.group());
}
m.reset();
System.out.println("
The Matcher is reset");
while (m.find()) {
System.out.println(m.group());
}
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP