如何 trim java 中 returns 的字符串
How to trim a string from carriage returns in java
我有一个字符串:
\n\n\n\Mytext is here\n new line \n\n
开头和结尾有未知数量的 \n。
我怎样才能 trim 这个字符串到
Mytext is here\n new line
以一种优雅的方式?
我知道我可以用我自己的函数编写代码。但是,也许有一个简单的解决方案?
Trim 它,使用 String
的 trim 方法,其中“Returns 字符串的副本,省略了前导和尾随空格。
请注意,它 Returns 字符串的副本 并且不会编辑 String
myString.trim()
空字符串
正如@rmertins 所说,这不是 "null safe",意思是如果你的 String
是 null
它会抛出一个 NullPointerException
所以如果你的 String
可以null
,把它包起来
if (myString != null)
{
String newTrimmedString = myString.trim();
}
像@rmertins 所说的那样导入整个库来完成这项任务(即来自 apache commons 的 StringUtils)我会说这太过分了。我还要说的是,无论如何传递 null
个对象是不好的做法,并且 null
String
个对象表明设计不好。
String foo = "\n\n \n\t actual Value\t\n \n ";
System.out.println(foo.trim()); //prints "actual Value"
尽可能简单和优雅。不过请记住,这不仅会 trim 换行符,还会包含制表符、空格等。
String.trim()
首尾trim客场白space。这可能是最快的方法。如果您需要保留其他白色 space 而只想删除 \n
,我想您将不得不手动替换它们。
您可以按照
myString = myString.replace("^(\n)*","").replace("(\n)*$","");
(我没有试过这段代码。)
如果您的字符串可能是 null
,您可能需要使用 StringUtils.trim()
- the null-safe version of String.trim()
.
我有一个字符串:
\n\n\n\Mytext is here\n new line \n\n
开头和结尾有未知数量的 \n。
我怎样才能 trim 这个字符串到
Mytext is here\n new line
以一种优雅的方式?
我知道我可以用我自己的函数编写代码。但是,也许有一个简单的解决方案?
Trim 它,使用 String
的 trim 方法,其中“Returns 字符串的副本,省略了前导和尾随空格。
请注意,它 Returns 字符串的副本 并且不会编辑 String
myString.trim()
空字符串
正如@rmertins 所说,这不是 "null safe",意思是如果你的 String
是 null
它会抛出一个 NullPointerException
所以如果你的 String
可以null
,把它包起来
if (myString != null)
{
String newTrimmedString = myString.trim();
}
像@rmertins 所说的那样导入整个库来完成这项任务(即来自 apache commons 的 StringUtils)我会说这太过分了。我还要说的是,无论如何传递 null
个对象是不好的做法,并且 null
String
个对象表明设计不好。
String foo = "\n\n \n\t actual Value\t\n \n ";
System.out.println(foo.trim()); //prints "actual Value"
尽可能简单和优雅。不过请记住,这不仅会 trim 换行符,还会包含制表符、空格等。
String.trim()
首尾trim客场白space。这可能是最快的方法。如果您需要保留其他白色 space 而只想删除 \n
,我想您将不得不手动替换它们。
您可以按照
myString = myString.replace("^(\n)*","").replace("(\n)*$","");
(我没有试过这段代码。)
如果您的字符串可能是 null
,您可能需要使用 StringUtils.trim()
- the null-safe version of String.trim()
.