java.time.Matcher.find(int start)方法将重置匹配器,然后尝试从指定的索引开始查找与模式匹配的输入序列的下一个子序列。
boolean find(int start) - 声明
以下是 java.time.Matcher.find(int start)方法的声明。
public boolean find(int start)
start - 输入字符串中的开始索引。
boolean find(int start) - 返回值
当且仅当从给定索引处开始的输入序列的子序列匹配此匹配器的模式时,才为true
boolean find(int start) - 异常
IndexOutOfBoundsException -如果模式中没有具有给定索引的捕获组。
boolean find(int start) - 示例
下面的示例显示java.time.Matcher.find(int start)方法的用法。
package com.learnfk; import java.util.regex.Matcher; import java.util.regex.Pattern; public class MatcherDemo { private static String REGEX = "(a*b)(foo)"; private static String INPUT = "aabfooaabfooabfoob"; private static String REPLACE = "-"; public static void main(String[] args) { Pattern pattern = Pattern.compile(REGEX); //获取匹配器对象 Matcher matcher = pattern.matcher(INPUT); if(matcher.find(6)) { //在匹配的最后一个字符之后打印偏移量。 System.out.println("First Capturing Group, (a*b) Match String end(): "+matcher.end()); System.out.println("Second Capturing Group, (foo) Match String end(): "+matcher.end(1)); } } }
让无涯教程编译并运行以上程序,这将产生以下输出-
First Capturing Group, (a*b) Match String end(): 12 Second Capturing Group, (foo) Match String end(): 9
参考链接
https://www.learnfk.com/javaregex/javaregex-matcher-find1.html
标签:Java,String,int,Matcher,start,boolean,matcher,find From: https://blog.51cto.com/u_14033984/9041025