我有一个这样的字符串,其中 symbol 和 property 不同:
a = '/stock/%(symbol)s/%(property)s'
我有另一个这样的字符串,其中 AAPL 和 price 不同:
b = '/stock/AAPL/price'
我正在尝试生成这样的字典:
c = {
'symbol': 'AAPL',
'property': 'price'
}
使用字符串格式,我可以这样做:
> a % c == b
True
但我正试图走向另一个方向。是时候使用一些正则表达式魔法了吗?
请您参考如下方法:
正则表达式解决方案:
>>> import re
>>> b = '/stock/AAPL/price'
>>> result = re.match('/.*?/(?P<symbol>.*?)/(?P<property>.*)', b)
>>> result.groupdict()
{'symbol': 'AAPL', 'property': 'price'}
您可以对正则表达式进行更多调整,但本质上就是这个想法。
