1

次のような状況があるとします。

>>> a = "test string with %(experiment1)s and %(experiment2)s"

このようなリストを抽出する方法はありますか?

['experiment1', 'experiment2']

ありがとう!

4

2 に答える 2

4

また、Python のフォーマット ルーチンをだまして、キーを見つけさせることもできます。

class MyDict(dict):
    def __missing__(self, key):
        return self.setdefault(key, "")

d = MyDict()
dummy = "test string with %(experiment1)s and %(experiment2)s" % d
print d.keys()

版画

['experiment1', 'experiment2']
于 2013-08-20T21:13:12.543 に答える
0

使用regex:

>>> import re
>>> a = "test string with %(experiment1)s and %(experiment2)s"
>>> re.findall(r'%\((.*?)\)', a)
['experiment1', 'experiment2']
于 2013-08-20T20:51:19.437 に答える