我试图从字符串中提取以。com结尾的多个域名,从https或http开始。
字符串是:
string="jssbhshhahttps://www.one.comsbshhshshttp://www.another.comhehsbwkwkwjhttp://www.again.co.uksbsbs"
我已经创建了如下模式:
pattern=re.compile("https?://")
我不知道如何完成它。
我想返回以http
或Https
开始并仅以.com
结束的所有域的列表。因此输出中没有.co.uk
域。
我已经尝试在中间使用(.*)
来表示字符的无限组合,但现在确定如何完成它。
任何帮助都将非常感激,如果表达式的所有部分都能解释,那将是伟大的。
可以使用
https?://(?:(?!https?://)S)*?.com
参见regex演示。您可以使用不区分大小写的修饰符re.I
或添加(?i)
内联标志来使regex不区分大小写。
https?://
-http://
或https://
(?:(?!https?://)S)*?
-任何非空白字符,零个或多个,但尽可能少出现,不以http://
或https://
字符序列开头(此正则表达式结构在"tempered greedy token">名称下已知).com
-.com
字符串。