- Java 正则表达式教程
- Java 正则表达式 - 主页
- Java 正则表达式 - 概述
- Java 正则表达式 - 捕获组
- Java 正则表达式 - MatchResult 接口
- Java 正则表达式 - Pattern 类
- Java 正则表达式 - Matcher 类
- PatternSyntaxException 类
- Java 正则表达式示例
- Java 正则表达式 - 字符
- Java 正则表达式 - 字符类别
- 预定义字符类别
- POSIX 字符类别
- Java 正则表达式 - JAVA 字符类别
- Unicode 字符类别
- Java 正则表达式 - 边界匹配器
- Java 正则表达式 - 贪婪量词
- Java 正则表达式 - 勉强量词
- Java 正则表达式 - 独占量词
- Java 正则表达式 - 逻辑运算符
- Java 正则表达式实用资源
- Java 正则表达式 - 快速指南
- Java 正则表达式 - 实用资源
- Java 正则表达式 - 讨论
java.util.regex.MatchResult.start() 方法
说明
java.time.MatchResult.start(int group) 方法会在本次匹配中返回由给定组捕获的子序列的开始索引。
声明
以下是 java.time.MatchResult.start(int group) 方法的声明。
int start(int group)
参数
group - 此匹配器模式中捕获组的索引。
返回值
组捕获的第一个字符的索引,如果匹配成功但组本身未匹配任何内容,则返回 -1。
异常
IllegalStateException - 如果尚未尝试匹配,或者先前的匹配操作失败。
IndexOutOfBoundsException - 如果模式中没有具有给定索引的捕获组。
示例
以下示例展示了 java.time.MatchResult.start(int group) 方法的使用。
package com.tutorialspoint; import java.util.regex.MatchResult; import java.util.regex.Matcher; import java.util.regex.Pattern; public class MatchResultDemo { private static final String REGEX = "(.*)(\\d+)(.*)"; private static final String INPUT = "This is a sample Text, 1234, with numbers in between."; public static void main(String[] args) { // create a pattern Pattern pattern = Pattern.compile(REGEX); // get a matcher object Matcher matcher = pattern.matcher(INPUT); if(matcher.find()) { //get the MatchResult Object MatchResult result = matcher.toMatchResult(); //Prints the start index of the subsequence captured by the given group during this match. System.out.println("Second Capturing Group - Match String start(1): "+result.start(1)); } } }
让我们编译并运行上述程序,这将产生以下结果 -
Second Capturing Group - Match String start(1): 0
javaregex_matchresult.htm
广告