# -*- coding: utf-8 -*-
import re
import sys
import MySQLdb
from getpass import getpass
reload(sys)
sys.setdefaultencoding('utf-8')
conn = MySQLdb.connect(host, user, passwd, db, charset = 'utf-8')
cur = conn.cursor()
cur.execute("show tables")
tablenames = [i[0] for i in cur.fetchall()]
cur.execute("SELECT * FROM %s" % tablenames)
rows = cur.fetchall()
for row in rows:
x = re.compile(r"\bhello\b")
p = x.search(str(row))
if p:
cur.execute("DELETE FROM %s WHERE " % t) # how to delete this row
conn.close()
上記のコードを使用して、テーブルの行を正規表現で検索し、キーワード「hello」を検索します。
一致する場合は、すべて取得した行を for ループした行を削除したいと思います。
正規表現が行を見つけたときに削除ステートメントを作成するにはどうすればよいですか?
どうもありがとう!