ruby – 将空字符串转换为nil到位?

前端之家收集整理的这篇文章主要介绍了ruby – 将空字符串转换为nil到位?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在寻找一种使用 Ruby将空字符串转换为nil的方法.如果我最终得到一个空格的字符串,我可以做
"    ".strip!

这将给我空字符串“”.

我希望能做的是这样的事情.

"    ".strip!.to_nil!

这将使用nil替换空字符串. to_nil!如果它是.empty会直接将字符串更改为nil?否则,如果字符串不为空,则不会改变.

这里的关键是我希望它直接发生而不是通过诸如的任务

f = nil if f.strip!.empty?

解决方法

干净的方式是使用存在.

我们来试试吧.

"    ".presence
# => nil


"".presence
# => nil


"text".presence
# => "text"


nil.presence
# => nil


[].presence
# => nil

请注意,此方法来自Ruby on Rails v4.2.7
https://apidock.com/rails/Object/presence

原文链接:https://www.f2er.com/ruby/268786.html

猜你在找的Ruby相关文章