gpt4 book ai didi

java - 子串第一个、第二个、第三个、...、n 个匹配

转载 作者:行者123 更新时间:2023-12-01 19:32:32 27 4
gpt4 key购买 nike

给定:字符串 s = "{aaa}{bbb}ccc.

如何获取包含哪些元素的数组(或列表):

第 0 个元素:aaa
第一个元素:bbb
第二个元素:ccc

这是我的尝试:

String x = "{aaa}{b}c";
return Arrays.stream(x.split("\\}"))
.map(ss -> {
Pattern pattern = Pattern.compile("\\w*");
Matcher matcher = pattern.matcher(ss);
matcher.find();
return matcher.group();
})
.toArray(String[]::new);

(假设仅允许 Java <= 8)

最佳答案

如果您的字符串格式良好(如示例所示),则简单的替换就足够了:

String[] myStrings = {"{aaa}bbb", "{aaa}{bbb}{ccc}ddd", "{aaa}{bbb}{ccc}{ddd}eee"};
for(String str : myStrings){
String[] splited = str.replace("}{", "}").replace("{", "").split("}");
System.out.println(Arrays.toString(splited));
}

打印:

[aaa, bbb]
[aaa, bbb, ccc, ddd]
[aaa, bbb, ccc, ddd, eee]

关于java - 子串第一个、第二个、第三个、...、n 个匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59162923/

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