java的matcher方法_Java中的Matcher end()方法与示例

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

Matcher类的end()方法返回由当前对象表示的最后一个匹配之后的偏移量。

子表达式“ [...]”匹配输入字符串中花括号内指定的字符,在下面的示例中,使用该表达式来匹配字符t。这里,我们已经使用该compile()方法编译了正则表达式。

获取Matcher对象。

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

示例import java.util.Scanner;

import java.util.regex.Matcher;

import java.util.regex.Pattern;

public class EndExample {

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 end = matcher.end();

System.out.println(end);

}

}

}

输出结果Enter input text:

Hello how are you welcome to Nhooo

27

32

43

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java MatcherJava的一个类,用于对字符串进行匹配操作。它是通过正则表达式来实现字符串匹配的功能。Matcher类提供了一系列方法,可以用于查找、匹配和替换字符串。 Matcher类的常用方法包括: 1. `matches()`:尝试将整个输入序列与模式进行匹配。 2. `find()`:在输入序列查找下一个匹配项。 3. `group()`:返回与上一次匹配操作相匹配的输入子序列。 4. `start()`:返回上一次匹配操作的起始索引。 5. `end()`:返回上一次匹配操作的结束索引。 使用Matcher类需要先创建一个Pattern对象,通过Pattern对象的`matcher()`方法来创建一个Matcher对象。然后可以使用Matcher对象的方法进行字符串匹配操作。 下面是一个示例代码,演示了如何使用Matcher类进行字符串匹配: ```java import java.util.regex.Matcher; import java.util.regex.Pattern; public class MatcherExample { public static void main(String[] args) { String input = "Hello, World! This is a test string."; String pattern = "\\b\\w+\\b"; // 匹配单词 Pattern p = Pattern.compile(pattern); Matcher m = p.matcher(input); while (m.find()) { System.out.println("Match: " + m.group()); System.out.println("Start index: " + m.start()); System.out.println("End index: " + m.end()); } } } ``` 输出结果: ``` Match: Hello Start index: 0 End index: 5 Match: World Start index: 7 End index: 12 Match: This Start index: 15 End index: 19 Match: is Start index: 20 End index: 22 Match: a Start index: 23 End index: 24 Match: test Start index: 25 End index: 29 Match: string Start index: 30 End index: 36 ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值