正则表达式匹配除来自 url 的协议之外的所有内容
regex to match everything except protocol from url
我有以下正则表达式模式:
(?:http.?:\/\/)
这匹配来自网络的协议组件url,我想要一个正则表达式来做相反的事情,匹配除协议之外的所有内容,到目前为止我的每一次尝试都没有奏效。
因为最终我想做的是检查两个 url 是否相同而没有协议,所以我可以这样做:
if url_1[regex] == url_2[regex]
应该这样做:
/.*?\/\/(.*)/
您可以使用此正则表达式始终捕获开头的可选 http://
或 https://
之后的部分:
/^(?:[^:]+:\/\/)?(.+)$/
用这个拿第二组$2
/^(?:[^:]*:\/\/)?(.*?)$/
我有以下正则表达式模式:
(?:http.?:\/\/)
这匹配来自网络的协议组件url,我想要一个正则表达式来做相反的事情,匹配除协议之外的所有内容,到目前为止我的每一次尝试都没有奏效。
因为最终我想做的是检查两个 url 是否相同而没有协议,所以我可以这样做:
if url_1[regex] == url_2[regex]
应该这样做:
/.*?\/\/(.*)/
您可以使用此正则表达式始终捕获开头的可选 http://
或 https://
之后的部分:
/^(?:[^:]+:\/\/)?(.+)$/
用这个拿第二组$2
/^(?:[^:]*:\/\/)?(.*?)$/