在Ruby中,你可以使用URI.regexp
方法來驗證一個字符串是否是一個有效的網址。這是一個預定義的正則表達式,用于匹配常見的網址格式。下面是一個示例:
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
# 測試
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
這個valid_url?
方法嘗試解析輸入的URL,如果解析成功并且是一個HTTP或HTTPS類型的URI,那么返回true
,否則返回false
。請注意,這個方法不會驗證URL的實際可用性,只會檢查其格式是否正確。