我大约有6000条记录,我想读取它们并INSERT
到新表中。它们包含单引号和双引号,并且MySQL无法接受我的查询,因为当阻止我的{{1 }}(单引号)已关闭并生成语法错误:
'
当我打印查询时,得到以下sql查询:
sql = "INSERT INTO tr_en_ahmadali(id,sura,aya,aya_text) VALUES({0},{1},{2},'{3}');".format(str(index), str(j[index - 1]) ,str(aya_), str(k[single_aya - 1]))
print(sql)
我的问题是: 如何使用python将\'或\“替换为单引号和双引号?
答案 0 :(得分:1)
您可以使用后面带有负数的简单正则表达式:
(?<!\\)(["'])
这需要替换为
\\\1
Python
中的整个内容:
import re
string = """This ain't funny, you know.
But this escaped one (\") won't change."""
rx = re.compile(r'''(?<!\\)(["'])''')
string = rx.sub(r'\\\1', string)
print(string)