我正在尝试从一些格式宽松的URL中提取子域+域。有些以http://开头,有些则不是。我用以下正则表达式介绍了http://情况:
(?<=(\/\/))[^\/]*
与类似的东西匹配
https://stackoverflow.com/questions/ask
到
stackoverflow.com
这是正确的。但是现在我希望它与上述情况匹配并且
stackoverflow.com/questions/ask
到
stackoverflow.com
我正在使用一些第三方工具,该工具没有明确说明他们用于正则表达式解析的内容。该如何表达?
答案 0 :(得分:1)
如果工具基于python,则可以使用此正则表达式:
(?:(?<=://)|^)[^/:]+(?!.*://)
负向超前(?!.*://)
将阻止匹配前面具有://
的字符串,从而避免在开始时匹配https
。
否则使用:
(?<=:\/\/|^)[^\/:]+(?!.*:\/\/)