Matcher 類的 region 方法用於通過指定匹配器輸入序列的起點和終點來限製匹配器的區域。此方法重置匹配器,然後將區域設置為從 start 參數指定的索引處開始,並在 end 參數指定的索引處結束。
用法:
public Matcher region(int start, int end)
參數
start- 開始搜索的索引(包括)
end- 搜索結束的索引(獨占)
返回
這個匹配器
拋出
IndexOutOfBoundsException - 如果開始或結束小於零,如果開始大於輸入序列的長度,如果結束大於輸入序列的長度,或者如果開始大於結束。
自從
1.5
例子1
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class MatcherRegionExample1 {
public static void main(String[] args) {
Pattern pattern = Pattern.compile("(a*b)(java)");
int i=0;
// get a regular expression as matcher object
Matcher matcher = pattern.matcher("aabjavaaabjavaabjavab");
matcher = matcher.region(0, 15);
while(matcher.find()) {
i=i+1;
//Prints the index of last character matched.
System.out.println(i+" Capturing Group, (a*b) Match String end():"+matcher.end());
}
}
輸出:
1 Capturing Group, (a*b) Match String end():7 2 Capturing Group, (a*b) Match String end():14 java.util.regex.Matcher[pattern=(a*b)(java) region=0,15 lastmatch=aabjava]
例子2
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class MatcherRegionExample2 {
public static void main(String[] args) {
Pattern pattern = Pattern.compile("(a*b)(java)");
int i=0;
// get a regular expression as matcher object
Matcher m = pattern.matcher("aabjavaaabjavaabjavab");
m = m.region(2, 10);
while(m.find()) {
i=i+1;
//Prints the index of last character matched.
System.out.println(i+" Capturing Group, (a*b) Match String end():"+m.end());
}
if(m.lookingAt())
System.out.println(""+m.toString());
}
}
輸出:
1 Capturing Group, (a*b) Match String end():7 java.util.regex.Matcher[pattern=(a*b)(java) region=2,10 lastmatch=bjava]
相關用法
- Java Matcher region(int, int)用法及代碼示例
- Java Matcher regionEnd()用法及代碼示例
- Java Matcher regionStart()用法及代碼示例
- Java Matcher replaceAll(String)用法及代碼示例
- Java Matcher replaceFirst(String)用法及代碼示例
- Java Matcher replaceAll(Function)用法及代碼示例
- Java Matcher requireEnd()用法及代碼示例
- Java Matcher reset(CharSequence)用法及代碼示例
- Java Matcher reset()用法及代碼示例
- Java Matcher replaceFirst(Function)用法及代碼示例
- Java Matcher matches()用法及代碼示例
- Java Matcher group(String)用法及代碼示例
- Java Matcher start(int)用法及代碼示例
- Java Matcher useTransparentBounds()用法及代碼示例
- Java Matcher lookingAt()用法及代碼示例
- Java Matcher quoteReplacement()用法及代碼示例
- Java Matcher end()用法及代碼示例
- Java Matcher useAnchoringBounds()用法及代碼示例
- Java Matcher appendTail(StringBuffer)用法及代碼示例
- Java Matcher hasAnchoringBounds()用法及代碼示例
注:本文由純淨天空篩選整理自 Java Matcher region() Method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。