[英]How to trim a string from carriage returns in java
我有一个字符串:
\n\n\n\Mytext is here\n new line \n\n
在开始和结束时的\\ n数量未知。
我怎么修剪这串
Mytext is here\n new line
以优雅的方式?
我知道我可以使用自己的函数对此进行编码。 但是,也许有一个简单的解决方案?
使用String
trim方法修剪它,该方法“ 返回字符串的副本,并且省略前导和尾随空格。 ”
请注意,它返回字符串的副本,并且不编辑String
myString.trim()
空字符串
正如@rmertins所说,这不是“空值安全”,这意味着如果您的String
为null
,它将抛出NullPointerException
因此如果您的String
可以为null
,则将其包装起来。
if (myString != null)
{
String newTrimmedString = myString.trim();
}
像@rmertins所说的那样,导入整个库来完成一项任务(例如,来自Apache Commons的StringUtils ),我会说是过头了。 我还要说,无论如何都要传递null
对象是一个坏习惯,而null
String
对象则表明设计不好。
String.trim()
将在开头和结尾处String.trim()
空白。 那可能是最快的方法。 如果您需要保留其他空格而只想删除\\n
,我想您将不得不手动替换它们。
您可以尝试以下方法
myString = myString.replace("^(\\n)*","").replace("(\\n)*$","");
(我没有尝试过此代码。)
String foo = "\n\n \n\t actual Value\t\n \n ";
System.out.println(foo.trim()); //prints "actual Value"
尽可能简单而优雅。 但是请记住,这不仅会修剪换行符,还会修剪制表符,空格等。
如果您的字符串可能为null
,则可能要使用StringUtils.trim()
- String.trim()
的null安全版本。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.