怎么用String.trim()去掉换行符
时间: 2023-05-25 13:02:18 浏览: 544
A:可以使用以下代码:
String str = "Hello\nWorld\n";
str = str.trim().replaceAll("\\n", "");
System.out.println(str);
输出结果为:HelloWorld
在这里,首先使用trim()方法去掉字符串两端的空格,然后使用replaceAll()方法将字符串中的换行符替换为空字符串。需要注意的是,在Java中,换行符使用"\n"表示,由于"\n"在正则表达式中有特殊含义,因此需要使用双反斜杠"\\n"来表示真实的换行符。
相关问题
tcl 中如何去掉字符串的空格换行符
在 Tcl 中,可以使用 `string map` 命令将字符串中的空格和换行符替换为空字符串,从而实现去除操作,例如:
```
set str " hello world\n "
set stripped [string map {" " "" "\n" ""} $str]
```
这样,`$stripped` 的值就是 "helloworld",字符串中的空格和换行符已经被去除了。
另外,如果只是想去除字符串两侧的空格和换行符,可以使用 `string trim` 命令,例如:
```
set str " hello world\n "
set trimmed [string trim $str]
```
这样,`$trimmed` 的值也是 "helloworld",字符串两侧的空格和换行符已经被去除了。
string:strip(PortStr)这个函数去不掉换行符
对不起,我的回答有误。确实,`string:strip/1` 函数可以去掉字符串两端的空格,但它无法去掉字符串尾部的换行符。在这种情况下,您可以使用 `string:trim/1` 函数。这个函数可以去掉字符串两端的空格和换行符。下面是修改后的代码:
```erlang
-module(redis_config).
-export([write_to_file/2, read_from_file/0]).
% 将 Redis 地址和端口写入文件
write_to_file(Host, Port) ->
{ok, File} = file:open("redis.config", [write, binary]),
ok = file:write(File, io_lib:format("~s ~p", [Host, Port])),
ok = file:close(File).
% 从文件中读取 Redis 地址和端口
read_from_file() ->
{ok, File} = file:open("redis.config", [read, binary]),
{ok, Data} = file:read(File, 1024),
[Host, PortStr] = string:tokens(binary_to_list(Data), " "),
Port = list_to_integer(string:trim(PortStr)),
{ok, {Host, Port}}.
```
在修改后的代码中,我们使用了 `string:trim/1` 函数去掉字符串两端的空格和换行符,然后将其转换为整数。这样,就可以避免出现 `bad argument` 错误了。
阅读全文