在Ruby中,你可以使用URI.regexp
方法來(lái)驗(yàn)證一個(gè)字符串是否是一個(gè)有效的網(wǎng)址。這是一個(gè)預(yù)定義的正則表達(dá)式,用于匹配常見(jiàn)的網(wǎng)址格式。下面是一個(gè)示例:
require 'uri'
def valid_url?(url)
uri = URI.parse(url)
uri.is_a?(URI::HTTP) || uri.is_a?(URI::HTTPS)
rescue URI::InvalidURIError
false
end
# 測(cè)試
puts valid_url?("https://www.example.com") # 輸出: true
puts valid_url?("ftp://www.example.com") # 輸出: false
puts valid_url?("http://www.example") # 輸出: false
puts valid_url?("www.example.com") # 輸出: false
這個(gè)valid_url?
方法嘗試解析輸入的URL,如果解析成功并且是一個(gè)HTTP或HTTPS類型的URI,那么返回true
,否則返回false
。請(qǐng)注意,這個(gè)方法不會(huì)驗(yàn)證URL的實(shí)際可用性,只會(huì)檢查其格式是否正確。