Я немного борюсь с некоторым поиском / заменой регулярных выражений ..
Я хочу найти некоторые термины, и когда он находит какое-либо из них, он удаляет строку, в которой они находятся, и следующую строку.
В терминах, которые я хочу найти, будут кавычки и запятые.
Это типичные поисковые термины (включая кавычки):
"ТЕКСТ ДВА", BB
"ТЕКСТ ТРИ", AA
"ТЕКСТ ЧЕТЫРЕ", AA
Типичный файл (будет содержать 1000 строк):
#text:0 first="blah" second="TEXT ONE",AA | more text
Line 1
#text:0 first="blah" second="TEXT TWO",BB | more text
Line 2
#text:0 first="blah" second="TEXT THREE",AA | more text
Line 3
#text:0 first="blah" second="TEXT FOUR",BB | more text
Line 4
#text:0 first="blah" second="TEXT THREE",AA | more text
Line 5
#text:0 first="blah" second="TEXT FOUR",AA | more text
Line 2
Мне бы хотелось, чтобы результат был:
#text:0 first="blah" second="TEXT ONE",AA | more text
Line 1
#text:0 first="blah" second="TEXT FOUR",BB | more text
Line 4
т.е. любая строка, содержащая любое из трех указанных выше терминов, будет полностью удалена вместе со следующей строкой.
Я попытался найти / заменить регулярное выражение:
Найти что: -
.*"TEXT TWO",BB.*\R.*(?:\R|$)|.*"TEXT THREE",AA.*\R.*(?:\R|$)|.*"TEXT FOUR",AA.*\R.*(?:\R|$)
Заменить на: - (оставьте пустым)
Когда я делаю «найти» и «подсчитать», там правильно написано 86 совпадений. Если я сделаю «Заменить», он скажет, что он заменил 86 совпадений - НО фактически удалил тысячи строк.
Смущенный…
Можете ли вы помочь, пожалуйста? Нужны ли мне дополнительные цитаты или экранирующие символы?