擅长:python、mysql、java
<p>首先,可以编译正则表达式以避免对每一行进行解析</p>
<pre><code>import re
reCol1id = re.compile('^(\d+)\^')
reCol15id = re.compile('^.*\^.*\^(\d+)\^.*\^.*\^.*\^.*\^.*\^.*\^.*\^.*\^.*\^.*\^.*')
count_1 = 0
for line in open('tablefile.txt'):
if count_1 > 70:
break
else:
col1id = reCol1id.findall(line)[0]
col15id = reCol15id.findall(line)[0]
line = line.strip()
count_1 += 1
cur.execute('''INSERT INTO mytable (mycol1id, mycol15id, wholeline) VALUES (?, ?, ?)''',
(col1id, col15id, line, ) )
conn.commit()
print('row count_1=',count_1)
</code></pre>