我的 Ruby 模型中有以下方法:
老的:
def to_s
numbers = self.title.scan(/\d+/) if self.title.scan(/\d+/)
return numbers.join.insert(0, "#{self.title.chop} ") if numbers
"#{self.title.titlecase}"
end
新的:
def to_s
numbers = self.title.scan(/\d+/)
return numbers.join.insert(0, "#{self.title.sub(/\d+/, '')} ") if numbers.any?
self.title.titlecase
end
Atitle
可以是这样的:Level1 或 TrackStar
所以 TrackStar 应该成为 Track Star 而 Level1 应该是 Level 1,这就是为什么我开始扫描数字
我正在尝试像 Level 1 一样显示它。上面的作品,我只是想知道是否有更雄辩的解决方案