gpt4 book ai didi

java - 正则表达式删除方括号内的逗号和空格

转载 作者:行者123 更新时间:2023-12-02 03:02:48 25 4
gpt4 key购买 nike

您好,我有一个如下所示的文件:

year.", [229, 338], null, [1144, 2371]
year....", null, null, [812]
year:, null, null, [1019, 1028, 2463]
year;, null, [164], [1052]

这就是我希望文件的样子

year.", 229:338, , 1144:2371
year....", , , 812
year:, , , 1019:1028:2463
year;, , 164, 1052

我已经尝试过 .replaceAll(",[?=[^()]*\\]]",":") 但这只是替换所有逗号而不是括号内的逗号。

最佳答案

看起来你想要

  • 删除所有null
  • number, number, number 替换为 number:number:number,换句话说,将前面有数字的每个 , 替换为 :
  • 删除[]

演示:

String input = 
"year.\", [229, 338], null, [1144, 2371]\r\n" +
"year....\", null, null, [812]\r\n" +
"year:, null, null, [1019, 1028, 2463]\r\n" +
"year;, null, [164], [1052]";

String expected =
"year.\", 229:338, , 1144:2371\r\n" +
"year....\", , , 812\r\n" +
"year:, , , 1019:1028:2463\r\n" +
"year;, , 164, 1052";

input = input.replace("null", "")
.replaceAll("(?<=\\d), ", ":")
.replaceAll("\\[|\\]", "");

System.out.println(input.equals(expected));

输出:true

关于java - 正则表达式删除方括号内的逗号和空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42195766/

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