您好我正在使用ruby-2.5.0和Rails 5处理RoR项目。我有一个方法,我用正则表达式查找日期和时间如下: -
def find_date_time(params)
date_pattern = %r{\d{1,2}/\d{1,2}/\d{4}|\d{1,2}\/\d{1,2}\/\d{2}}
time_pattern = /(\d{2}\:\d{2}:\d{2}|\d{2}\:\d{2})/
date = params.to_s[date_pattern]
return unless date
date_array = date.split('/')
if date_array.last.length == 2
date = date_array.replace([date_array.first,
date_array.second,
'20' + date_array.third])
.join('/')
end
time = params.to_s.scan(time_pattern)
Time.strptime(date +
' ' +
(time.present? ? time.uniq.flatten.last : ''),
(time.present? ? '%d/%m/%Y %H:%M' : '%d/%m/%Y'))
end
它的工作正常,但是当我运行我的单元测试RAILS_ENV=test bundle exec rake
时,它返回错误Methods exceeded maximum allowed ABC complexity (1)
我正在使用rubocop-rspec。请帮助我如何降低代码的复杂性。提前谢谢。