我正在寻找一种使用Ruby将空字符串转换为nil的方法.如果我最终得到一个空格的字符串,我可以做
" ".strip!
Run Code Online (Sandbox Code Playgroud)
这将给我空字符串"".
我希望能做的就是这样.
" ".strip!.to_nil!
Run Code Online (Sandbox Code Playgroud)
这将使用nil替换空字符串.to_nil!如果它是.empty会直接将字符串更改为nil?否则,如果字符串不为空,则不会改变.
这里的关键是我希望它直接发生而不是通过诸如的任务
f = nil if f.strip!.empty?
Run Code Online (Sandbox Code Playgroud)
Kom*_* K. 32
干净的方式正在使用presence.
我们来试试吧.
' '.presence
# => nil
''.presence
# => nil
'text'.presence
# => "text"
nil.presence
# => nil
[].presence
# => nil
Run Code Online (Sandbox Code Playgroud)
请注意,此方法来自Ruby on Rails v4.2.7 https://apidock.com/rails/Object/presence
| 归档时间: |
|
| 查看次数: |
8068 次 |
| 最近记录: |