Я пытаюсь разбить огромный файл SQL в маленький sql-файл, и для этого я использую python, но код, который я использую, не соответствует и из того, что я видел на google it должен.Python regexp conundrum
Вот код:
import sys, re
p = [0]
f = open('/root/testsql/data.sql', 'r')
tables =["tabel1", "table2"]
contor = 0;
con = 0;
for line in f:
for table in tables:
stri = "root/testsql/" + str(con)
con = con + 1
stri2 = ".*" + table + ".*"
if re.match(stri2,line):
print table
f2 = open(stri,"w")
f2.write(line)
f2.close()
Если кто-нибудь имеет представление о том, почему re.match не работает, она была бы оценена.
SQL-файл очень длинный (73595 строк) и содержит строки вроде:
insert into table ...
insert into table
Каков выходной сигнал при записи f2? Изменить: или это вообще не происходит? – danseery
У меня нет выхода, вот в чем проблема. У меня есть таблица печати в том случае, если просто проверить, что я вхожу в if, но нет выхода, поэтому он не входит в цикл – primero
Копирование текста, который вы показываете для своих строк и таблиц, а затем выполняете 're.match' привело к матчам. Вы уверены, что текст, который вы показываете, - это то, что вы получаете из файла? – GreenMatt