如何从多行字符串中删除最后一个字符?

3

例子: 考虑以下字符串:

String a="This line1 has a,b,c,\nThis line2 has d,e,f, \nThis line3 has g,h,i";
System.out.println(a);

输出:

This line1 has a,b,c,                 
This line2 has d,e,f,                        
This line3 has g,h,i

由于这是一个多行字符串,我该如何从输出中删除每行的最后一个逗号,并打印像下面提到的那样的输出?

This line1 has a,b,c                
This line2 has d,e,f                        
This line3 has g,h,i

Arrays.stream(a.split("\n")) .map(l -> l.replaceAll("(.*?),\\s*$", "$1")) .forEach(System.out::println); - Youcef LAIDANI
你目前尝试了什么? - lucasvw
1个回答

10

你可以使用正则表达式:

String output = a.replaceAll(",\\s*\n", "\n");
它将替换逗号、0个或多个空格和换行符的任何序列,只保留一个换行符。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接