gpt4 book ai didi

java - 从正则表达式输出中删除空字符串

转载 作者:行者123 更新时间:2023-12-04 05:15:29 26 4
gpt4 key购买 nike

我有看起来像这样的字符串:[item 1, item2, item3]
我想要的输出是:

item 1
item2
item3

我写了这段代码:
String text = "[item 1, item2, item3]";
String[] text_output = text.split(", |\\[|\\]");
for(String item:text_output)
fileOutStream.write(("\n"+item).getBytes());

我得到的输出是正确的,不同的是在输出数组中的第一个元素是一个空字符串。我做错了什么?

最佳答案

您已请求在 [ 拆分字符串和 ]所以系统服从并考虑 [ 之前的空白空间成为你的第一个元素。您可以通过多种方式继续操作:

  • 使用 text.replaceAll("\\[|\\]", "") split 前;
  • 在拆分之前硬编码消除第一个和最后一个字符:text.substring(1, text.length()-1) ;
  • 使用 正匹配而不是消极的:
    Pattern.compile("[^,\\[\\]]+").matcher().find()
  • 关于java - 从正则表达式输出中删除空字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14338327/

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