这是我的示例字符串:
“hey_this_is_a_test”
所以我希望函数返回“htiat”。
我找到了这样的方式:
x = "hey_this_is_a_test"
y = x.split("_")
z = ""
y.each do |w|
z += w[0]
end
puts z
但是我想知道是否有更短的方法可以解决它,我觉得我可能不会通过一些用例。
答案 0 :(得分:3)
您可以使用正则表达式执行此操作。
"hey_this_is_a_test".scan(/^(.)|_(.)/).join
# => "htiat"
另外它看起来很酷。
答案 1 :(得分:3)
x = "hey_this_is_a_test"
x.split("_").map{|s| s[0]}.join # => "htiat"
答案 2 :(得分:2)
"hey_this_is_a_test".gsub(/(?<=[a-z])./, "")
答案 3 :(得分:0)
"hey_this_is_a_test".prepend("_").scan(/(?<=_)./).join