ruby从字符串中删除反斜杠
我怎么能把它变成没有斜线的常规字符串?
我有:
"3e265629c7ff56a3a88505062dd526bd\""
我想要:
"3e265629c7ff56a3a88505062dd526bd"
你有什么:
"3e265629c7ff56a3a88505062dd526bd\""
相当于:
'3e265629c7ff56a3a88505062dd526bd"'
所以要删除:
string.tr!('"', '')
请记住,所有特殊字符都以反斜杠为前缀。 这不仅包括newline \n
或linefeed \r
\n
,还包括引号"
或反斜杠本身\\
。
这怎么样?
s = "3e265629c7ff56a3a88505062dd526bd\"" s[/\w+/] # => "3e265629c7ff56a3a88505062dd526bd"
如果要删除除字母和数字之外的所有内容,可以使用“tr”function。
例如:
"3e265629c7ff56a3a88505062dd526bd\"".tr('^A-Za-z0-9','')
此函数使用不带字符的字符串替换除字母和数字之外的所有内容。 这是函数的参考。
希望对你有效。
只是另一种方式"3e265629c7ff56a3a88505062dd526bd\"".delete ?"
str = "3e265629c7ff56a3a88505062dd526bd\"" str.gsub(%r{\"}, '') => "3e265629c7ff56a3a88505062dd526bd"
Ruby的String#[]
是你的朋友。 从…开始:
foo = "3e...bd\""
这些是获取值而没有尾随嵌入引用的替代方法:
# delete it foo[-1] = '' foo['"'] = '' foo[/"$/] = ''
要么:
# skip it foo[0..-2]