java - Java如何获取字符串中通配符的值?

标签 java javascript regex string parsing

这段代码可以在 javascript 中运行,是否可以在 java 中执行类似的操作? (获取字符串中通配符的值)

    var a = "HI MY NAME IS BOB"

    var b = /HI MY NAME IS (.*)/

    alert("HI " + b.exec(a)[1])

最佳答案

您可能需要找到捕获的组#1:

Pattern p = Pattern.compile("(?i)Hi MY NAME IS (.*)");
Matcher m = p.matcher("Hi MY NAME IS BOB");
if (m.find()) {
     System.out.println( "Group #1: " + m.group(1) ); // BOB
}
  • (?i) 用于忽略大小写匹配
  • m.group(1) 将从正则表达式中给出第一个捕获组的值,即 (.*)

关于java - Java如何获取字符串中通配符的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27736141/

相关文章:

Java - 堆栈类找不到内存泄漏

java - Glassfish 中的 lib 文件夹中的文件夹有什么用,应该如何使用它们?

java - 使用 lucene 提取 tf-idf vector

javascript - Google Analytics 代码应该在母版页中还是在 asp.net 的每个页面中?

php - 如何在 php 中将 HTML 动态表作为邮件发送?

javascript - JSLint - 在 '\' 之前出现意外的 '.'

python - 根据使用正则表达式获得的另一列上的匹配替换列上的值 (Python Pandas)

java - RESTEasy-Spring 集成 web 应用程序抛出神秘错误 : NoResourceFoundFailure

javascript - 旋转一个div如何设置围绕哪个点旋转?

html - 从 Sql Server 中的 Html 列替换 img src