1

У меня есть почти 1 ГБ CSV-файл и мне нужно отредактировать этот файл с помощью регулярных выражений, и я должен найти и заменить на возвышенное с регулярным выражением \=\\\" для поиска и =' для замены.

Я могу сделать это, заплевывая CSV-файл, но это процесс, требующий времени. Если у кого-то есть идея сделать это, используя Sublime, VIM или любой другой способ, это поможет мне. Заранее спасибо.

1 ответ1

2

Хорошо, я получил одно решение для этого с помощью кода python , который успешно работает для меня.

# import the modules that we need. (re is for regex)
import os, re

# set the working directory for a shortcut
os.chdir('/home/Desktop/python')

# open the source file and read it
fh = file('file.csv', 'r')
thetext = fh.read()
fh.close()

# create the pattern object. Note the "r". In case you're unfamiliar 
with Python
# this is to set the string as raw so we don't have to escape our 
escape characters

#match all the character you want to replace like below
p1 = re.compile(r'\=\\\"')

# do the replace
result = p1.sub("='", result)

# write the file
f_out = file('newfile.csv', 'w')
f_out.write(result)
f_out.close()

и сохраните его в yourfilename.py

и для пользователя ubuntu откройте терминал и перейдите в каталог с файлами и выполните команду как

python ./yourfilename.py

это заменит =" to =' . Надеюсь, что это поможет другим.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .