Python 正则表达式匹配s3链接
我有一个s3对象,格式如下Python 正则表达式匹配s3链接,python,regex,amazon-s3,Python,Regex,Amazon S3,我有一个s3对象,格式如下 https://s3-{region}.amazonaws.com/{bucket}/{environment}/{keyname} 我需要一个正则表达式,它可以从s3链接获取单个变量。目前我有以下正则表达式 r"https\:\/\/s3\-(\w+)\.amazonaws\.com\/(\w+)\/(\w+)\/(\w+)$" 但它不返回任何值。您可以选择: https?://s3- (?P<region>[^.]+).amazonaws.com/
https://s3-{region}.amazonaws.com/{bucket}/{environment}/{keyname}
我需要一个正则表达式,它可以从s3链接获取单个变量。目前我有以下正则表达式
r"https\:\/\/s3\-(\w+)\.amazonaws\.com\/(\w+)\/(\w+)\/(\w+)$"
但它不返回任何值。您可以选择:
https?://s3-
(?P<region>[^.]+).amazonaws.com/
(?P<bucket>[^/]+)/
(?P<environment>[^/]+)/
(?P<keyname>.*)
你有没有用类似的方法测试过?因此,您应该重新考虑
\w+
是否适合您得到的值。如果您在末尾省略美元符号会怎么样?哦。谢谢你,乔恩。区域名称中有-
。相应地修改了正则表达式。
import re
rx = re.compile(r'''
https?://s3-
(?P<region>[^.]+).amazonaws.com/
(?P<bucket>[^/]+)/
(?P<environment>[^/]+)/
(?P<keyname>.*)''', re.VERBOSE)
links = rx.findall(your_string_here)