gpt4 book ai didi

嵌套的Java正则表达式

转载 作者:行者123 更新时间:2023-11-29 05:58:43 25 4
gpt4 key购买 nike

我对 JAVA 中的正则表达式有很大的兴趣(花 3 天!!!)。这是我的输入字符串:

#sfondo: [#nome: 0, #imga: 0],#111: 222, #p: [#ciccio:aaa, #caio: bbb]

我需要将这个字符串解析为数组树,必须像这样匹配:

group: #sfondo: [#nome: 0, #imga: 0]
group: #111: 222
group: #p: [#ciccio:aaa, #caio: bbb]

带或不带嵌套括号

我试过这个:

"#(\\w+):(.*?[^,\]\[]+.*?),?"

但是这个分组由每个元素用“,”分隔,也在括号内

最佳答案

试试这个:

import java.util.regex.*;

class Untitled {
public static void main(String[] args) {
String input = "#sfondo: [#nome: 0, #imga: 0],#111: 222, #p: [#ciccio:aaa, #caio: bbb]";
String regex = "(#[^,\\[\\]]+(?:\\[.*?\\]+,?)?)";
Pattern pattern = Pattern.compile(regex);
Matcher matcher = pattern.matcher(input);

while (matcher.find()) {
System.out.println("group: " + matcher.group());
}
}
}

关于嵌套的Java正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11029411/

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