gpt4 book ai didi

Java 模式/匹配器 - 返回从一种方法到另一种方法的匹配

转载 作者:行者123 更新时间:2023-12-01 08:09:22 24 4
gpt4 key购买 nike

我是一个绝对的 Java 初学者。我在论坛上搜索过,但找不到该问题的答案。

我有两个类,一个类浏览句子数组列表。我只附加了 for-each 循环,如下所示。“matching”是另一个类的实例(包含模式/匹配器代码)matchEndings 是方法,附在下面。

for (String sentence: sentences) {
String match = matching.matchEndings(sentence);
if (match.length() > 0) {
System.out.println(match);
}
}

这就是方法。

public String matchEndings(String s){
Pattern p = Pattern.compile(".*?(aa|ee)");
Matcher m = p.matcher(s);

return m.group();

}

我的问题是,如何将包含 aa/ee 结尾的匹配句子返回到第一类,并在那里打印?代码已编译,但是当我运行时,我得到 <小时/>

Exception in thread "main" java.lang.IllegalStateException: No match found
at java.util.regex.Matcher.group(Unknown Source)
at java.util.regex.Matcher.group(Unknown Source)

提前非常感谢您!

最佳答案

Matcher.group() 仅在已存在匹配项时返回。你需要做这样的事情:-

if (m.matches()) {
return m.group();
} else {
return "";
}

关于Java 模式/匹配器 - 返回从一种方法到另一种方法的匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18740122/

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