如何删除空格和仅在两端的“\ n”

时间:2014-07-23 12:15:43

标签: java regex string whitespace

我已阅读过该主题的帖子 How to remove the \n, \t and spaces between the strings in java?

但我希望在中间保留空格或\ n,以便最后我会检查每个按空格分割元素或\ n作为命令。

例如,有些事情甚至更多。如果用户输入\n command1\n command2 \n(并且命令可能超过两次或仅一次)。我希望将字符串作为command1 command2

如果之后将中间的\ n全部替换为空格,那将很棒,我只需要NEWSTRING.split("")来获取所有命令。但是可以保持' \ n'(多次)

所以,如果字符串被\ n或空格分割,我只希望保留空格,但如果有\ n(可能是多次),可以将它们保留在中间位置。

总之,我希望我的字符串将被格式化为"一些字符串" + [空格或\ n] +""一些字符串"。

如果Regrex无法帮助我,有什么好办法吗?非常感谢你!

更多示例:

我这样做的原因是我希望了解用户正在说什么命令。例如,他可能会说" 1"这只意味着" 1",他可能会说" \ n1 \ n apple \ n"这意味着" 1 apple"。

1 个答案:

答案 0 :(得分:1)

您可以用空格替换字符串中的所有\n,然后修剪字符串:

String str="\\n command1\\n command2 \\n";
String formattedStr=str.replaceAll("\\\\n"," ").trim();// formattedStr='command1 command2'