0

我正在开发一个 django 项目来修改文件settings.py中的数据库选项。我想使用正则表达式来做到这一点。选项就像: 'PASSWORD':'123456', 所以我写了一个函数,代码如下:

    def config_item(self,data,item,value):
        rStr = "'"+item+"':(\s)?'\w*'"
        src = "'"+item+"': '"+value+"'"
        res = re.sub(rStr,src,data)
        return res

所以我可以这样调用将密码修改为'000000',

data = config_item(data,'PASSWORD','0000')

但是当源密码为空或目标密码为空时,就不起作用了。即不匹配'PASSWORD':'', 是不是正则表达式有问题。我如何正确地写它。

4

1 回答 1

0

也许尝试使用'[^']*'而不是'\w*'

我认为 \w 更严格一些。

于 2013-04-11T02:02:01.627 回答