【发布时间】:2013-09-27 10:02:33
【问题描述】:
我必须“解析”一个格式字符串才能提取变量。
例如
>>> s = "%(code)s - %(description)s"
>>> get_vars(s)
'code', 'description'
我设法通过使用正则表达式来做到这一点:
re.findall(r"%\((\w+)\)", s)
但我想知道是否有内置的解决方案(实际上 Python 会解析字符串以对其进行评估!)。
【问题讨论】:
-
我建议您改用新的 python 3 字符串格式,其中
string.Formatter和解析模块:github.com/r1chardj0n3s/parse 都可用。 -
请给 -1 一个理由:它会帮助我改进我的问题!
标签: regex parsing python-2.x string-formatting