<分区>
我正在尝试在 Swift 3 中验证 URL,但我似乎找不到适合我需要的正则表达式。我所追求的正则表达式需要接受以下组合:
http://google.com
http://google.com/foo/bar:30/35
https://google.com
https://google.com/foo/bar:30/35
www.google.com
google.com
<分区>
我正在尝试在 Swift 3 中验证 URL,但我似乎找不到适合我需要的正则表达式。我所追求的正则表达式需要接受以下组合:
http://google.com
http://google.com/foo/bar:30/35
https://google.com
https://google.com/foo/bar:30/35
www.google.com
google.com
最佳答案
func validateUrl (urlString: NSString) -> Bool {
let urlRegEx = "((?:http|https)://)?(?:www\\.)?[\\w\\d\\-_]+\\.\\w{2,3}(\\.\\w{2})?(/(?<=/)(?:[\\w\\d\\-./_]+)?)?"
return NSPredicate(format: "SELF MATCHES %@", urlRegEx).evaluateWithObject(urlString)
}
这有效。
关于regex - 在 Swift 3 中验证 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39996840/