我已阅读过该主题的帖子 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"。
答案 0 :(得分:1)
您可以用空格替换字符串中的所有\n
,然后修剪字符串:
String str="\\n command1\\n command2 \\n";
String formattedStr=str.replaceAll("\\\\n"," ").trim();// formattedStr='command1 command2'