我需要在ruby中编写方法来检索字符串的前3个字符,接下来的3个字符,最后是字符串的剩余4个字符。 因此,例如,如果数字“2134588967”存储为字符串,那么我需要返回的方法:
“213”
“458”
“8967”
如果字符串少于8个字符,则该方法不应抛出错误。也许只返回零。
有没有办法在没有任何正则表达式的情况下执行此操作?
答案 0 :(得分:3)
这应该这样做:
def method(str)
str.length < 8 ? nil : [str[0..2], str[3..5], str[6..10]]
end
答案 1 :(得分:0)
快速而肮脏的方法
split_number("12345678")
def split_number(string)
return nil if string.length < 8
puts string[0..2]
puts string[3..5]
puts string[6..9]
end