在我的 Rails 应用中,我需要验证用户输入的 URL 是否真的是一个 URL。我只关心 HTTP 协议(也许 HTTPS,但我还没有研究过),这让我相信在 Rails 中可能已经有一些可以为我完成这项工作的东西。
如果没有:您能推荐一个正则表达式字符串吗?我通过谷歌找到了一些,但根据用户评论,它们似乎都有一两个问题。
谢谢
如果没有:您能推荐一个正则表达式字符串吗?我通过谷歌找到了一些,但根据用户评论,它们似乎都有一两个问题。
谢谢
def uri?(string)
uri = URI.parse(string)
%w( http https ).include?(uri.scheme)
rescue URI::BadURIError, URI::InvalidURIError
false
end
URI
库的优点是,您可以执行复杂的检查。validates :url, :format => URI::regexp(%w(http https))
验证 :url 的格式必须为 http 或 https。