如何将带有点的字符串转换为符号

时间:2015-02-18 11:13:31

标签: ruby symbols literals

我正在尝试将字符串"country."转换为符号。我希望收到:country.,包括.点。

我尝试了以下操作,但它们不起作用,因为我的符号仍然有引号。

"country.".to_sym; #=> :"country."
"country.".intern; #=> :"country."
"country.".parameterize.underscore.to_sym; #=> :country
"country\.".to_sym; #=> :"country."

2 个答案:

答案 0 :(得分:0)

也许它会对你有所帮助:

:'country.'

答案 1 :(得分:0)

它按预期工作。 大部分时间都是符号:

:symbol_name

但是当符号包含空格或连字符等特殊字符时,或者在您的情况下包含句点时,它需要用引号括起来:

:"symbol name with-many special characters."

虽然它看起来并不正确,但它会充当任何其他符号。