我正在尝试从字符串数组[
中替换]
和[ab, cd ,ef]
个字符,以获得如下输出:
ab, cd, ef
使用正则表达式
(^\s*|[\n\t\r\[\]])
但我无法获得所需的输出。
答案 0 :(得分:1)
为什么不在String类中使用replace方法?
String str = "[ab, cd ,ef]";
str.replace("[", "").replace("]", "");
答案 1 :(得分:1)
这将有效:
String str = "[ab, cd, ef]";
System.out.println(str.replaceAll("[\\[\\]]", ""));
解释:它使用正则表达式中的character class来替换您不想要的所有字符。
<强>输出强>:
ab, cd ,ef
答案 2 :(得分:0)
虽然它不是正则表达式,但是如果我已经理解了你想要的东西(你在数组上做一个to-string并修剪结果以获得CSV) - 这也会有用:
String data = "[Hello World]";
System.out.println(String.copyValueOf(data.toCharArray(),1,data.length()-2));
那就是说,你理想情况下不应该这样做,因为它不灵活(如果你想要一个分号或冒号而不是一个逗号,那么你必须重新进行替换!)。理想情况下,您应该使用for-each进行迭代,然后附加适当的分隔符。