我有一个字符串"/com.bing.bang/20140620%2F351811403305411724"
我正在尝试将"com.bing.bang"
和"20140620%2F351811403305411724"
简单.split['/']
无法正常工作,因为字符串以" /"
如何做到这一点?
答案 0 :(得分:2)
你可以做到
_, *arr = s.split '/'
arr
#=> ["com.bing.bang", "20140620%2F351811403305411724"]
答案 1 :(得分:1)
/
,拆分将有效:
str = "/com.bing.bang/20140620%2F351811403305411724"
fst, snd = str[1..-1].split('/')
fst # => "com.bing.bang"
snd # => "20140620%2F351811403305411724"
str.split['/']
没有做任何有用的事情,它实际上会引发异常,因为split是一种方法。要调用它,您必须使用括号(圆括号),如下所示:str.split('/')
。
异常的原因是前一个表达式对解释器实际上是这样的:(str.split)['/']
所以它会在其空格上拆分str
,然后它将['/']
视为从拆分生成的数组的索引。
这是一个问题,因为你给它的索引是一个字符串,而数组只接受Integer
索引,所以你最终得到了TypeError
。
答案 2 :(得分:1)
x = "/com.bing.bang/20140620%2F351811403305411724"
bits = x.split("/")
bits.shift if bits[0] == "" # dump the initial ""
(part1,part2) = bits