【发布时间】:2009-12-04 00:35:46
【问题描述】:
短版 -- 如何在 ruby 中执行 Python rsplit()?
更长的版本——如果我想在第一个 '.' 处将字符串分成两部分(名称、后缀)字符,这很好地完成了工作:
name, suffix = name.split('.', 2)
但如果我想在 last(最右边)'.' 处拆分角色,我想不出比这更优雅的东西了:
idx = name.rindex('.')
name, suffix = name[0..idx-1], name[idx+1..-1] if idx
请注意,原始名称字符串可能根本没有点,在这种情况下,名称应保持不变,后缀应为零;它也可能有多个点,在这种情况下,只有最后一个点之后的位应该是后缀。
【问题讨论】: