如何修改Ruby的match匹配语句使其返回布尔值true或false
Ruby正则匹配返回布尔值的简洁实现
推荐写法(Ruby 2.4及以上版本)
直接使用String#match?方法,该方法匹配成功直接返回true,失败返回false,不会生成多余的MatchData对象,也不会修改全局匹配变量,性能最优:
self.volunteer_event.description.match?(/^Roster #/)
全版本兼容写法
如果使用的Ruby版本低于2.4,可以用双感叹号将match方法的返回值强转为布尔值:
!!self.volunteer_event.description.match(/^Roster #/)
也可以配合=~正则匹配运算符实现:
!!(self.volunteer_event.description =~ /^Roster #/)
内容的提问来源于stack exchange,提问作者thefonso
相关产品推荐
相关产品推荐

