-1

我想验证带有或不带有 http 的 url。我试过了 ^http(s{0,1})://[a-zA-Z0-9_/\\-\\.]+\\.([A-Za-z/]{2,5})[a-zA-Z0-9_/\\&\\?\\=\\-\\.\\~\\%]*

但这是火柴http://google.com but not www.google.com。我也想要一个匹配 www.google.com 的正则表达式。

谢谢

4

2 回答 2

3

尝试使用^(https?://)?而不是开始您的正则表达式^http(s{0,1})://

于 2012-12-24T04:44:52.773 回答
2

^(?:https?://)? ... the rest of your regex

  • ?:表示不捕获组
  • ?量词缩小(如果存在则匹配,如果不存在 - 省略它)

PS我不确定是否quantifier minification对英语为母语的人有意义,这是俄语的粗略翻译:)希望,如果我弄错了,有人能理解我的意思并可以解决我的问题。

于 2012-12-24T04:45:29.650 回答