[英]ruby remove backslash from string
我怎么能把它变成没有斜线的常规字符串?
我有:
"3e265629c7ff56a3a88505062dd526bd\""
我想要:
"3e265629c7ff56a3a88505062dd526bd"
你有什么:
"3e265629c7ff56a3a88505062dd526bd\""
相当于:
'3e265629c7ff56a3a88505062dd526bd"'
所以要删除:
string.tr!('"', '')
请记住,所有特殊字符都以反斜杠为前缀。 这不仅包括newline \\n
或linefeed \\r
\\n
,还包括引号"
或反斜杠本身\\\\
。
这怎么样?
s = "3e265629c7ff56a3a88505062dd526bd\""
s[/\w+/]
# => "3e265629c7ff56a3a88505062dd526bd"
如果要删除除字母和数字之外的所有内容,可以使用“tr”功能。
例如:
"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]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.