gpt4 book ai didi

java - 通过正则表达式从字符串中获取带有斜杠的正确日期

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

我有以下字符串volltext:

Los 3, PG 3, Lead-Analytiker Anforderungsanalyse / Konzept Servicezeit 1    1   532     7/1/17  10/31/17 

我正在尝试获取 10/31/17 行中的最后一个字符串。

使用我当前的代码,我得到7/1/17。保持对我来说很重要KEYWORDMULTIMATCHPATTERNINFORMATIONSEXTRAKTORZEILENFUELLER 结构。我应该如何更改 INFORMATIONSEXTRAKTOR 正则表达式来获取 10/31/17 字符串?

这是我的代码:

import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

import org.apache.commons.lang3.StringUtils;

public class ZuParser implements BedarfsanforderungParser {

private static final String KEYWORD = "Los.*PG.*Servicezeit";
private static final String MULTIMATCHPATTERN = "[\\t\\s]*\\d*[\\t\\s]*\\d*[\\t\\s]*\\d*[\\t\\s]*";
private static final String INFORMATIONSEXTRAKTOR = "(\\d*[\\/]*\\d*[\\/]*\\d{1,2})";
private static final String ZEILENFUELLER = "[\\t\\s]*.*";

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

@Override
public void parse(String volltext, Abruf abruf) {
// volltext output --> "Los 3, PG 3, Lead-Analytiker Anforderungsanalyse / Konzept Servicezeit 1 1 532 7/1/17 10/31/17"
fillZu(volltext, abruf);

}

private void fillZu(String volltext, Abruf abruf) {
String zuDatumstring = getZuDatumString(volltext);

}


private String getZuDatumString(String volltext) {
Matcher matcher = ZUPATTERN.matcher(volltext);
if (matcher.find()) {
String matchString = matcher.group(1);
return matchString;
} else {
return "";
}
}
}

最佳答案

您需要添加表达式[\d\/]+\s+以跳过匹配组之前的第一个日期:

private static final String INFORMATIONSEXTRAKTOR = "[\d\/]+\s+(\\d*[\\/]*\\d*[\\/]*\\d{1,2})";

关于java - 通过正则表达式从字符串中获取带有斜杠的正确日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49884286/

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