Matcher.find(int)方法在Java正则表达式中的作用

Matcher.find(int)方法在指定为参数的子序列号之后找到输入序列中的子序列。在java.util.regex包中可用的Matcher类中可以使用此方法。

Matcher.find(int)方法具有一个参数,即子序列号,此子序列号之后将获得子序列,并且返回true就是获得所需的子序列,否则返回false。

一个程序演示了Java正则表达式中的Matcher.find(int)方法,如下所示-

示例

import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Demo {
   public static void main(String args[]) {
      Pattern p = Pattern.compile("apple", Pattern.CASE_INSENSITIVE);
      Matcher m = p.matcher("apple APPLE Apple aPPLE");
      System.out.println("apple APPLE Apple aPPLE");
      m.find(6);
      System.out.println(m.group());
      System.out.println("\napple APPLE Apple aPPLE");
      m.find(12);
      System.out.println(m.group());
      System.out.println("\napple APPLE Apple aPPLE");
      m.find(0);
      System.out.println(m.group());
   }
}

上面程序的输出如下-

apple APPLE Apple aPPLE
APPLE
apple APPLE Apple aPPLE
Apple
apple APPLE Apple aPPLE
apple

现在让我们了解上面的程序。

使用find(int)方法找到子序列号6、12和0之后的输入序列“ apple APPLE Apple aPPLE”中的子序列,并打印所需的结果。演示这的代码片段如下-

Pattern p = Pattern.compile("apple", Pattern.CASE_INSENSITIVE);
Matcher m = p.matcher("apple APPLE Apple aPPLE");
System.out.println("apple APPLE Apple aPPLE");
m.find(6);
System.out.println(m.group());
System.out.println("\napple APPLE Apple aPPLE");
m.find(12);
System.out.println(m.group());
System.out.println("\napple APPLE Apple aPPLE");
m.find(0);
System.out.println(m.group());