У меня есть текстовый файл, который я пытаюсь импортировать как простой файл в SQL2008, который выглядит следующим образом:
“123456”,”some text”
“543210”,”some more text”
“111223”,”other text”
etc…
Файл имеет более 300 000 строк, а текст большой (обычно 200-500 символов), поэтому сканирование файла вручную занимает очень много времени и подвержено ошибкам. Другие похожие (и даже более сложные файлы) были успешно импортированы.
Проблема с этим заключается в том, что «некоторые строки» содержат кавычки в тексте… (это произошло из экспорта из старой базы данных SuperBase, которая не позволяла вам указать квантификатор текста, я ничего не могу сделать с файл, кроме как очистить его и попытаться импортировать его).
Итак, «оскорбительные» строки выглядят так:
“123456”,”this text “contains” a quote”
“543210”,”And the “above” text is bad”
etc…
Вы можете увидеть проблему здесь.
Теперь, 300.000 - это не так уж много, если бы я мог выполнить поиск с помощью текстового редактора, который может использовать регулярные выражения, я бы вручную удалил кавычки из каждой строки. Проблема не в количестве оскорбительных строк, а в невозможности их найти с помощью простого поиска. Я уверен, что их меньше 500, но выложите их в текстовый файл размером 300 000 строк, и вы понимаете, о чем я.
Исходя из этого, что было бы лучшим регулярным выражением, которое я мог бы использовать для определения этих строк?
Моя первая мысль: скажите, какие строк содержат больше , чем 4 цитат («).
Но я ничего не мог придумать (я не очень хорош в Regex, кроме основ).