- 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.Matcher.start() 方法
说明
java.util.regex.Matcher.start() 方法返回先前匹配的起始位置。
声明
以下是 java.util.regex.Matcher.start() 方法的声明。
public int start()
返回值
匹配的第一个字符的索引。
异常
IllegalStateException - 如果尚未尝试匹配,或如果先前的匹配操作失败。
示例
以下示例显示了 java.util.regex.Matcher.start() 方法的用法。
package com.tutorialspoint; 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); // get a matcher object Matcher matcher = pattern.matcher(INPUT); while(matcher.find()) { //Prints the start index of the previous match. System.out.println("First Capturing Group, (a*b) Match String start(): "+matcher.start()); } } }
让我们编译并运行以上程序,结果如下 -
First Capturing Group, (a*b) Match String start(): 0 First Capturing Group, (a*b) Match String start(): 6 First Capturing Group, (a*b) Match String start(): 12
javaregex_matcher.htm
广告