【问题标题】:Rails - email link validation and phone number validation with URL validationRails - 带有 URL 验证的电子邮件链接验证和电话号码验证
【发布时间】:2020-12-03 00:04:32
【问题描述】:
我正在使用此代码进行 URL 验证。
def url?(string)
uri = URI.parse(string)
!uri.host.nil?
rescue URI::BadURIError
false
rescue URI::InvalidURIError
false
end
这可行,但我还想验证电子邮件链接和电话号码链接。
例如
mailto:test@gmail.com
tel:1234567890
我不想包含电子邮件验证和电话号码验证。
谁能帮帮我?
【问题讨论】:
标签:
ruby-on-rails
ruby
validation
email
url
【解决方案1】:
你在找这个吗-
def url?(string)
uri = URI.parse(string)
throw "MailToError" if uri.scheme == 'mailto'
throw "TelError" if uri.scheme == 'tel'
!uri.host.nil?
rescue URI::BadURIError
false
rescue URI::InvalidURIError
false
rescue => e
!(e.to_s.include?("TelError") || e.to_s.include?("MailToError"))
end