2013-04-24 206 views
1

我需要将第一个字符放在方括号内。例如,我想将​​转换为"[a]bc"。如何使用正则表达式在ruby中执行此操作?将方括号添加到字符串的第一个字符

+1

我不使用正则表达式认为是一个解决方案在这里,你不尝试以匹配任何东西。 – Loamhoof 2013-04-24 09:04:52

+0

有没有其他方法可以做到这一点? – 2013-04-24 09:05:52

回答

4

用正则表达式:

"abc".sub(/(.)/, '[\1]') 

没有正则表达式:

s = "abc" 
s[0] = "[#{s[0]}]" 
+0

太棒了。第一个工作,但不是第二个。 – 2013-04-24 09:11:45

+0

第二个返回值不是被替换的字符串。你需要调用's'来查看被替换的字符串。 – sawa 2013-04-24 09:13:14

+0

是的,我做到了。不过我会再检查一次。 – 2013-04-24 09:13:48

0

试试这个:

s = "abc" 
p "abc".insert(1, ']').prepend('[') #=> "[a]bc" 
相关问题