Java 中的 Matcher group() 方法及示例

Java 中的 Matcher group() 方法及示例,第1张

Java 中的 Matcher group() 方法示例

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

这个 (Matcher) 类的group()方法在最后一次匹配期间返回匹配的输入子序列。

示例 1
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class GroupExample {
   public static void main(String[] args) {
      String str = "

This is an example HTML script " + "where every alternative word is bold. " + "It also contains italic words

"; //Regular expression to match contents of the bold tags String regex = "(\S+)|(\S+)"; //Creating a pattern object Pattern pattern = Pattern.compile(regex); //Matching the compiled pattern in the String Matcher matcher = pattern.matcher(str); while (matcher.find()) { System.out.println(matcher.group()); } } }
输出
is
example
script
every
word
bold
also
italic

此方法的另一个变体接受表示组的整数变量,其中捕获的组从 1(从左到右)开始索引。

示例 2
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class GroupTest {
   public static void main(String[] args) {
      String regex = "(.*)(\d+)(.*)";
      String input = "This is a sample Text, 1234, with numbers in between.";
      //Creating a pattern object
      Pattern pattern = Pattern.compile(regex);
      //Matching the compiled pattern in the String
      Matcher matcher = pattern.matcher(input);
      if(matcher.find()) {
         System.out.println("match: "+matcher.group(0));
         System.out.println("First group match: "+matcher.group(1));
         System.out.println("Second group match: "+matcher.group(2));
         System.out.println("Third group match: "+matcher.group(3));
      }
   }
}
输出
match: This is a sample Text, 1234, with numbers in between.
First group match: This is a sample Text, 123
Second group match: 4
Third group match: , with numbers in between.

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5707346.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存