如何将常规字符串与正则表达式结果组合/连接?

时间:2014-06-19 13:21:41

标签: python regex string substitution

所以我有这个简单的代码:

def modify_mysql_log():
    #/var/log/mysql/mysql.log
    #Change: queries
    f=open("../mysql/mysql.log")
    t=open("../mysql/mysql2.log","w")
    for line in f:
        line=re.sub(r'Query\s*SELECT[A-Za-z\s+\W_]*\'',random.choice(queries),line)
        t.write(line)
    f.close()
    t.close()

现在我想要做的是,我希望能够用我用常规表达式找到的查询替换该行,我使用常规表达式搜索,使用random.choice(查询)结合定期的表现结果。我看过其他功能,但不知怎的,我不知道该怎么做。

1 个答案:

答案 0 :(得分:0)

line=re.sub(r'REGEX', random.choice(queries), line)

此代码将返回通过用random.choice(查询)替换正则表达式的“最左边非重叠事件”而获得的字符串。如果找不到正则表达式,则返回行。

如果我正确理解了问题,我会尝试在行中搜索正则表达式并使用string.replace(string_found_by_regex,random.choice(queries)+ line)