如何使用Ruby删除回车,而不将其替换为“-”或空格
我想从以下位置删除回车:如何使用Ruby删除回车,而不将其替换为“-”或空格,ruby,Ruby,我想从以下位置删除回车: "LIC_001 \r\n ,\r\n LIC_002 \r\n " 我希望值如下所示: "LIC_001 , LIC_002 " 我试过: "LIC_001 \r\n ,\r\n LIC_002 \r\n ".gsub!("\r\n", " - ") 请建议我如何做到这一点。您可以为此使用拆分/联接和正则表达式: str = "LIC_001 \r\n ,\r\n
"LIC_001 \r\n ,\r\n LIC_002 \r\n "
我希望值如下所示:
"LIC_001 , LIC_002 "
我试过:
"LIC_001 \r\n ,\r\n LIC_002 \r\n ".gsub!("\r\n", " - ")
请建议我如何做到这一点。您可以为此使用拆分/联接和正则表达式:
str = "LIC_001 \r\n ,\r\n LIC_002 \r\n "
puts str.split(/[\n\r, ]+/).join(" , ")
您可以为此使用拆分/联接和正则表达式:
str = "LIC_001 \r\n ,\r\n LIC_002 \r\n "
puts str.split(/[\n\r, ]+/).join(" , ")
你试过以下方法吗
"LIC_001 \r\n ,\r\n LIC_002 \r\n ".gsub!("\r\n", "")
如果是这样,请解释为什么它不能给你想要的结果…你试过以下方法吗
"LIC_001 \r\n ,\r\n LIC_002 \r\n ".gsub!("\r\n", "")
如果是这样,请解释为什么它不能给你想要的结果…这应该可以做到:
"LIC_001 \r\n ,\r\n LIC_002 \r\n ".squish
#=> "LIC_001 , LIC_002"
这应该可以做到:
"LIC_001 \r\n ,\r\n LIC_002 \r\n ".squish
#=> "LIC_001 , LIC_002"
您可以将多个空格替换为一个空格,并使用以下内容删除尾随空格和前导空格: 这两种方法都是标准的Ruby 如果字符串包含unicode空格,则可以使用
"LIC_001 \r\n ,\r\n LIC_002 \r\n ".gsub(/[[:space:]]+/,' ').strip!
# "LIC_001 , LIC_002"
您可以将多个空格替换为一个空格,并使用以下内容删除尾随空格和前导空格: 这两种方法都是标准的Ruby 如果字符串包含unicode空格,则可以使用
"LIC_001 \r\n ,\r\n LIC_002 \r\n ".gsub(/[[:space:]]+/,' ').strip!
# "LIC_001 , LIC_002"
它的删除回车但不带值的空格删除回车但不带值的空格values@kirti虽然这不是最初的问题,但是您可以对这类字符串的数组执行arr.map&:squish。。。这两个值都在同一个索引上。squish无法更改任何内容的索引,它只是修改一个字符串。你的错误一定在别的地方。是的,我正在检查。。。谢谢你的帮助Help@Eric,最初这个问题是关于Rails标签:@kirti虽然这不在最初的问题中,但您可以对此类字符串的数组执行arr.map&:squish。arr.map&:squish为什么不将其更改为两个元素。。。这两个值都在同一个索引上。squish无法更改任何内容的索引,它只是修改一个字符串。你的错误一定在别的地方。是的,我正在检查。。。谢谢你的帮助Help@Eric,最初这个问题是关于Rails标签的:逗号前有空格是很奇怪的。对不起,我混淆了strip和squish@EricDuminilha在逗号前留一个空格是很奇怪的。对不起,我把strip和squish搞混了@EricDuminilplease,添加ruby-on-rails标记,如果它的rails问题。我添加了它,但大约有2-3人编辑了它。它很简单:str.tr\r\n,请使用,添加ruby-on-rails标记,如果它的rails问题。我添加了它,但大约有2-3人编辑了它。它很简单:str.tr\r\n,使用