Java中具有示例的Matcher start()方法

java.util.regex.Matcher类表示执行各种匹配操作的引擎。该类没有构造函数,可以使用matches()java.util.regex.Pattern类的方法创建/获取该类的对象。

Matcher类的start()方法返回匹配字符的起始索引。

子表达式“ [...]”匹配输入字符串中花括号内指定的字符,在下面的示例中,使用该表达式来匹配字符t。这里,

  • 我们已经使用该compile()方法编译了正则表达式。

  • 获取Matcher对象。

  • matcher()在每个匹配项上调用该方法。

示例

import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class StartExample {
   public static void main(String[] args) {
      Scanner sc = new Scanner(System.in);
      System.out.println("Enter input text: ");
      String input = sc.nextLine();
      String regex = "[t]";
      //创建一个模式对象
      Pattern pattern = Pattern.compile(regex);
      //匹配字符串中的已编译模式
      Matcher matcher = pattern.matcher(input);
      int count =0;
      while (matcher.find()) {
         int start = matcher.start();
         System.out.println(start);
      }
   }
}

输出结果

Enter input text:
Hello how are you welcome to Nhooo
26
31
42

由于字符t在输入字符串中出现三次,因此您可以观察到三个索引值(代表每个字符的索引)。