【发布时间】:2018-10-08 14:11:05
【问题描述】:
我需要检查用户插入 URL 的字段。规则是:
- 没有空格;
- 以逗号分隔;
- 每个 URL 必须以 http:// 或 https:// 开头
输入文本的有效示例:
一些无效的例子:
- “https://validurl.com,badexample.com”
- “anotherbadone.com”
- “nomoreideas.com,badurl.com”
- "https://goodone.com, http://goodbutspacesnotwelcomed.com"
这是我的正则表达式,但不能正常工作:
/(^([\S]https?:\/\/)\w+(?:\.\w+)*\.\w{2,})$*/i
【问题讨论】:
-
什么工作不正常?
-
你想和
[\S]https中的\S匹配什么?您正在匹配任何非空白字符,但我认为 http 将是字符串的开头。最重要的是,你正试图捕捉它。 -
嗨@UweKeim,根据规则,匹配的网址无效。例如:“htt://test.com,blahblahblah.com”
-
@K.Dᴀᴠɪs,独立于删除 \S,它不起作用。我刚刚分享了最后一次尝试。
标签: javascript regex