如果网址不存在,我有以下方法将http://添加到网址的开头:
def smart_url(url)
unless url[/^http?s:\/\//]
url = 'http://' + url
end
end
只有在没有包含http(s)的情况下才有效,但是当http://已经包含在内时,它仍会添加它,我最终会有两个,当https://已经包含时它返回no网址!
我的正则表达式是否犯了错误?
答案 0 :(得分:3)
答案 1 :(得分:1)
非正则表达式解决方案:
def smart_url(url)
url.start_with?('http://', 'https://') ? url : 'http://'+url
end
? :
构造是编写if .. then..else..end
的简短方法。