我有一个我正在拆分的字符串,如下所示:
foo, bar, baz, etc = str.split(',')
Run Code Online (Sandbox Code Playgroud)
例如,如果str等于"一,二,四",则baz最终等于""(空字符串).有没有简单的方法来循环这些参数,nil如果它们是一个空字符串,将它们转换为?还是我坚持做以下事情?
foo = nil if foo.blank?
bar = nil if bar.blank?
baz = nil if baz.blank?
etc = nil if etc.blank?
Run Code Online (Sandbox Code Playgroud)
如果您在rails中执行此操作,则可以使用Object#presence方法:
foo, bar, baz, etc = str.split(',').map(&:presence)
Run Code Online (Sandbox Code Playgroud)
小智 5
我可以建议你这个解决方案:
foo, bar, baz, etc = str.split(',').map{|ss| ss.blank? ? nil : ss}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
936 次 |
| 最近记录: |