gpt4 book ai didi

java - 分割字符串并删除存储在数组中的逗号 - Java

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

我正在尝试通过删除当前不需要的部分来拆分字符串。我已经删除了大部分部分,但输出在存储它们的数组中包含太多逗号。这是我当前的代码:

List<String> flightItems = new ArrayList<String>();
String s = flightInfo;
String[] tokens = s.split("Start Location: | ---- |Destination: |Date/Time: ");

for (String t : tokens) {

flightItems.add(t);
}
System.out.println(flightItems);

这是我的控制台中当前输出的样子:

[, BOS, , ALB, , 03-20-2020 09:00AM]

我正在寻找的所需输出是这样的,因此我可以稍后引用索引:

[BOS, ALB, 03-20-2020 09:00AM]

flightInfo字符串如下:

Start Location: BOS ---- Destination: ALB ---- Date/Time: 03-20-2020 09:00AM

最佳答案

虽然您当前的正则表达式可能不适合拆分,但它接近于对输入文本进行正则表达式匹配。考虑:

String input = "Start Location: BOS ---- Destination: ALB ---- Date/Time: 03-20-2020 09:00AM";
String pattern = "(?:\\b(?:Start Location:|Destination:)\\s*(\\S+)|Date/Time:\\s*(\\S+\\s+\\S+))";
List<String> matches = new ArrayList<>();
Pattern r = Pattern.compile(pattern);
Matcher m = r.matcher(input);
while (m.find()) {
matches.add(!Objects.isNull(m.group(1)) ? m.group(1) : m.group(2));
}
System.out.println(String.join(",", matches)));

打印:

BOS,ALB,03-20-2020 09:00AM

关于java - 分割字符串并删除存储在数组中的逗号 - Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60680380/

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