我需要删除ruby中字符串的开头和结尾处的换行符(某种修剪)。
但是刚开始和结束......位于字符串中间的新行必须保持不变。
谢谢!
答案 0 :(得分:34)
您可以使用String#strip方法。
"\tgoodbye\r\n".strip #=> "goodbye"
答案 1 :(得分:3)
String.strip会从正面和背面删除所有额外的空格,只留下内部空间。
答案 2 :(得分:1)
如果你的目的是剥离空格,那么strip方法应该有用......但如果你试图专门定位新行,那么可以试试这个:
"\r\na b c d\r\ne f g\r\n".gsub(/^\r\n/, "").gsub(/\r\n$/, "")
=> "a b c d\r\ne f g"
gsub方法将使用正则表达式来定位开头^和结束$位置以替换为“”。
注意:这里我假设你的换行是\ r \ n。这可能与平台无关。
答案 3 :(得分:1)
NPatel's answer的平台无关版本是:
"\nabc\ndef\n".gsub(/^#{$/}/, "").gsub(/#{$/}$/, "")
答案 4 :(得分:0)
这应该这样做:
string.lstrip!.rstrip!