Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/elixir/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Elixir 如何从字符串中删除新行字符?_Elixir - Fatal编程技术网

Elixir 如何从字符串中删除新行字符?

Elixir 如何从字符串中删除新行字符?,elixir,Elixir,我要删除所有换行符: aaa = """ fdsfds fdsfds fdsfdsfds fdsfdsfds """ |> String.strip("\r\n") 我得到: argument error 这个怎么了 这个怎么了 String.strip仅支持删除一个字符。Elixir试图将“\r\n”转换为单个字符(),此时会引发该错误: 我怀疑这是你想要的,正如你所说的“我想删除一条新线的所有符号”。要删除所有\r和\n,您可以使用字符串。替换两次: iex(4)> aa

我要删除所有换行符:

aaa = """
fdsfds fdsfds
  fdsfdsfds
fdsfdsfds
""" |> String.strip("\r\n")
我得到:

argument error
这个怎么了

这个怎么了

String.strip
仅支持删除一个字符。Elixir试图将
“\r\n”
转换为单个字符(),此时会引发该错误:

我怀疑这是你想要的,正如你所说的“我想删除一条新线的所有符号”。要删除所有
\r
\n
,您可以使用
字符串。替换
两次:

iex(4)> aaa |> String.replace("\r", "") |> String.replace("\n", "")
"fdsfds fdsfds  fdsfdsfdsfdsfdsfds"
逃离新线

"""
fdsfds fdsfds \
  fdsfdsfds \
fdsfdsfds
"""

aaa |>String.replace(~r/\r |\n/,“”)
?@mudasobwa我个人不会在如此简单的情况下使用正则表达式,但这肯定是一个有效的解决方案!我还认为,在这种情况下,我的2字符串替换解决方案将比您的正则表达式快,尽管我还没有测量它。感谢
String.trim
关于确切顺序的提示。
iex(4)> aaa |> String.replace("\r", "") |> String.replace("\n", "")
"fdsfds fdsfds  fdsfdsfdsfdsfdsfds"
"""
fdsfds fdsfds \
  fdsfdsfds \
fdsfdsfds
"""