gpt4 book ai didi

java - 正则表达式 isMatch 返回 false

转载 作者:行者123 更新时间:2023-12-01 17:54:20 26 4
gpt4 key购买 nike

原始正则表达式:[v]\d+?\.\d

捕获字符串中的“v{N}.{n}”,其中 {N}/{n} 只是一个数字。我在代码(java)中尝试但返回 false。

代码:

  String content = "En este texto hay un documento v4.6.pdf";

String pattern = "[v]\\d+?\\.\\d";

boolean isMatch = Pattern.matches(pattern, content);
System.out.println("The text contains 'v{N}.{n}'? " + isMatch);

控制台:

The text contains 'v{N}.{n}'? false

最佳答案

matches 尝试匹配整个字符串。您应该使用 Matcherfind 方法来尝试查找匹配项。或者您可以尝试使用 .* 作为后缀和前缀来匹配整个字符串。

public static void main(String[] args) throws Exception {
String content = "En este texto hay un documento v4.6.pdf";
Pattern p = Pattern.compile("[v]\\d+?\\.\\d");
Matcher m = p.matcher(content);
if (m.find()) {
System.out.println("found");
}

}

输出:找到了

关于java - 正则表达式 isMatch 返回 false,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46541542/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com