gpt4 book ai didi

java - 通过正则表达式从行中获取彼此相邻的 3 个字符串

转载 作者:行者123 更新时间:2023-12-02 11:21:06 24 4
gpt4 key购买 nike

我有以下行

Nach unserer Information handelt es sich bei dieser Bedarfsanforderung um einen Folgeabruf für ein anderes Konsortium. Diese Information erfolgt ohne Gewähr.

我正在尝试从该行获取 3 个字符串 ein anderes Konsortium,但目前 kgString 为空。对我来说,保留 KEYWORD、MULTIMATCHPATTERN、INFORMATIONSEXTRAKTOR 结构非常重要。如何通过正则表达式从行中获取 ein anderes Konsortium 字符串?

public class KlassifizierungsgruppenParser  implements BedarfsanforderungParser  {

private static final String KEYWORD = ".*Nach unserer Information handelt es sich bei dieser Bedarfsanforderung um einen Folgeabruf ";
private static final String MULTIMATCHPATTERN = "[\\s\\*\\t]*";
private static final String INFORMATIONSEXTRAKTOR = "(ein\\s.*anderes.*Konsortium)";

private static final Pattern KGPATTERN = Pattern.compile("^" + KEYWORD + MULTIMATCHPATTERN + INFORMATIONSEXTRAKTOR + "$", Pattern.MULTILINE);

@Override
public void parse(String volltext, Abruf abruf) {

fillKG(volltext, abruf);
}

private void fillKG(String volltext, Abruf abruf) {

System.out.println("volltext: " + volltext);

String kgString = getKg(volltext);
System.out.println("kgString: " + kgString);

}

private String getKg(String volltext) {
Matcher matcher = KGPATTERN.matcher(volltext);
if (matcher.find()) {
return matcher.group(1);
} else {
return "";
}
}



}

最佳答案

该模式编译为 "^.*Nach unserer Information handelt es sich bei dieser Bedarfsanforderung um einen Folgeabruf [\\s\\*\\t]*(ein\\s.*anderes.*Konsortium) $" 并且有两个地方与输入不匹配:

  1. [\\s\\*\\t]*für 不匹配 - 要么使用 .* 代替,或将 für 添加到关键字。

  2. $ 不匹配。“Diese Information erfolgt ohne Gewähr。” 您可能想要将其删除。

You may also want to practice your regular expression (e.g. https://regex101.com/, https://regexr.com/, https://www.regextester.com/ etc.) to better learn how it works.

关于java - 通过正则表达式从行中获取彼此相邻的 3 个字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49915885/

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