java 正则 find_java.time.Matcher.find(int start)方法

本文详细介绍了Java的`Matcher.find(int start)`方法,该方法用于从指定索引开始查找模式匹配的子序列。示例代码展示了如何使用此方法,并打印出匹配的子串结束位置,帮助开发者理解其工作原理和应用。
摘要由CSDN通过智能技术生成

java.time.Matcher.find(int start)方法重置此匹配器,然后尝试从指定的索引处开始查找与模式匹配的输入序列的下一个子序列。

声明

以下是java.time.Matcher.find(int start)方法的声明。

public boolean find(int start)

参数start - 输入字符串中的起始索引。

返回值

当且仅当从给定索引开始的输入序列的子序列与此匹配器的模式匹配时才为真

异常

IndexOutOfBoundsException - 如果模式中没有具有给定索引的捕获组。

示例

以下示例显示了java.time.Matcher.find(int start)方法的用法。

package com.yiibai;

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);

if(matcher.find(6)) {

//Prints the offset after the last character matched.

System.out.println("First Capturing Group, (a*b) Match String end(): "+matcher.end());

System.out.println("Second Capturing Group, (foo) Match String end(): "+matcher.end(1));

}

}

}

执行上面示例代码,得到以下结果:

First Capturing Group, (a*b) Match String end(): 12

Second Capturing Group, (foo) Match String end(): 9

¥ 我要打赏

纠错/补充

收藏

加QQ群啦,易百教程官方技术学习群

注意:建议每个人选自己的技术方向加群,同一个QQ最多限加 3 个群。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值