使用 Java 正則表示式中的 Matcher.end() 方法
方法 java.util.regex.Matcher.end() 會根據正則表示式返回與序列匹配的最後一個字元後的偏移值。該方法不需要任何引數。如果沒有匹配發生或者匹配操作失敗,那麼會丟擲 IllegalStateException。
如下給出的程式展示了 Java 正則表示式中的 Matcher.end() 方法:
示例
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Demo {
public static void main(String args[]) {
Pattern p = Pattern.compile("(a*b)");
Matcher m = p.matcher("caaabccaab");
System.out.println("The input string is: caaabccaab");
System.out.println("The Regex is: (a*b)");
System.out.println();
while (m.find()) {
System.out.println("Index: " + m.end());
}
}
}輸出
The input string is: caaabccaab The Regex is: (a*b) Index: 5 Index: 10
現在我們瞭解一下上面的程式。
在字串序列“caaabccaab”中搜索子序列“(a*b)”。find() 方法用於查詢輸入序列中是否存在子序列,並且使用 end() 方法列印與最後一個字元匹配之後的偏移值。一個演示此操作的程式碼如下所示:
Pattern p = Pattern.compile("(a*b)");
Matcher m = p.matcher("caaabccaab");
System.out.println("The input string is: caaabccaab");
System.out.println("The Regex is: (a*b)");
System.out.println();
while(m.find()) {
System.out.println("Index: " + m.end());
}
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP