在python中使用``%``格式时,正则表达式验证字符串参数

时间:2014-10-21 04:06:55

标签: python regex

在python中,您可以使用%格式化参数 - 格式如下:

"Foo %(bar)" % {"bar": baz}

我使用一些参数如%(name)s用于Python中的字符串渲染(我正在编写自动邮件应用程序),我不知道在使用之前如何评估它,因为如果用户输入了错误的参数,例如%(名称)或%名称或%名称)或%% name()s或类似的东西,应用程序将出错。

1 个答案:

答案 0 :(得分:1)

此正则表达式匹配"正确"输入,例如%(foo)s

^%\(\w+\)s$

这允许任何"字"名字的字母。限制"名称"部分只是小写字母(就像你的例子一样):

^%\([a-z]+\)s$