Javascript 正则表达式匹配以http或斜杠开头的url

Javascript 正则表达式匹配以http或斜杠开头的url,javascript,regex,Javascript,Regex,我正在尝试匹配以http://或/开头的字符串 这将过去 http://www.google.com /the/path/home.aspx 我很确定这将匹配http,但我不知道如何适应可选的/ /^(https?:\/\/)/i 这应该起作用: /^((https?:\/)?\/)/i 您可以使用交替运算符(|),如下所示: /^(\/|https?:\/\/)/i 更多详细信息使用由符号|表示的“或”运算符,如下所示: /^(https?:\/\/|\/)/i

我正在尝试匹配以http://或/开头的字符串

这将过去

http://www.google.com
/the/path/home.aspx
我很确定这将匹配http,但我不知道如何适应可选的
/

/^(https?:\/\/)/i
这应该起作用:

/^((https?:\/)?\/)/i
您可以使用交替运算符(
|
),如下所示:

/^(\/|https?:\/\/)/i
更多详细信息

使用由符号
|
表示的“或”运算符,如下所示:

/^(https?:\/\/|\/)/i
              ^^^

作为对其他不太熟悉正则表达式的人的一个说明(因为这有点“跳出框框思考”),它说
http://
(可选
s
)是可选的,然后
/
是强制性的。这方便地匹配了
http://
https://
/
,因为最后一个
/
在所有情况下都是必需的。使用
|
的其他答案同样有效,这只是另一种思考方式。我给专家系统的答案是因为我使用了他的第一个答案,但我真的很喜欢他的创造力。谢谢你的洞察力,肖恩