ruby

Ruby正则表达式怎样验证网址

小樊
84
2024-11-06 03:31:34
栏目: 编程语言

在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的实际可用性,只会检查其格式是否正确。

0
看了该问题的人还看了