0

パラメータの辞書を期待する文字列を、期待される辞書のキーのリストに変換したいと思います。たとえば、次のような f を見つけます。

f("some text %(foo)s %(bar)s") == ['foo', 'bar',] # True

それを行う方法はありますか?

4

2 に答える 2

1

みたいな

>>> import re
>>> re.findall("%\(([^\)]+)\)[sif]", "some text %(foo)s %(bar)s", re.M)
['foo', 'bar']

[sif]一部は、 http://docs.python.org/library/stdtypes.html#string-formatting-operationsの表のシンボルで拡張できます

于 2012-06-29T14:33:55.287 に答える
0

これはどう:

>>> S = "some text %(foo)s %(bar)s"
>>> print re.findall(r'%\((.*?)\)', S)
['foo', 'bar']
于 2012-06-29T14:30:15.550 に答える