在Java中查找正则表达式的第一个匹配项的索引

3

编辑:我在这里找到了答案。返回使用正则表达式找到的字符串

有没有一种简单的方法可以获取字符串中与正则表达式匹配的所有子字符串的列表?

它应该像这样做。

  • 示例字符串:Google
  • 示例正则表达式:(og.e)
  • 我想用这种方法获得的内容:ogle

另一个例子。

  • 示例字符串:Facebook
  • 示例正则表达式:(a.o) 我想用这种方法获得的字符串:acebo

编辑:我找到了一些可能与此问题相关的东西。 http://www.java2s.com/Tutorial/CSharp/0360__Regular-Expression/Matchindexandvalue.htm 我仍然不知道这是否能实现我想要的功能。


  1. 你是指Java,还是指JavaScript?只能选一个。
  2. 我认为你正在把*当作Kleene星号,而不是Java、JavaScript和其他语言在正则表达式中所解释的*。我已编辑您的问题以更正正则表达式。
- Matt Ball
这篇帖子 https://dev59.com/Wl7Va4cB1Zd3GeqPO_kC 有答案。 - Rogel Garcia
对于一个表述清晰的问题,点赞! - Rogel Garcia
1个回答

1
你需要开始学习/使用java.util.regex API类 - Pattern和Matcher。关于正则表达式的更多信息,请阅读此tutorial
示例:
 Pattern pat=Pattern.compile("og.e");
 Matcher mat=pat.matcher("Google");
 if(mat.find())
     System.out.println(mat.start());

我本意是使用“.”而不是“*”。我会在原始帖子中进行修正。 - Anderson Green

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接