У меня есть файл fastq со строгим форматированием.Sed. удалить многострочные шаблоны. RegExp
входной файл:
@HWI-ST383:199:D1L73ACXX:3:1101:1309:1956 1:N:0:ACAGTGA
+
JJJHIIJFIJJJJ=BFFFFFEEEEEEDDDDDDDDDDBD
@HWI-ST383:199:D1L73ACXX:3:1101:3437:1952 1:N:0:ACAGTGA
GATCTCGAAGCAAGAGTACGACGAGTCGGGCCCCTCCA
+
IIIIFFF<[email protected][email protected]###############
В моем последнем question я решил мою проблему. Но я не правильно понимаю формат файла. Мне нужно, чтобы получить из входного файла этот файл:
выход:
@HWI-ST383:199:D1L73ACXX:3:1101:3437:1952 1:N:0:ACAGTGA
GATCTCGAAGCAAGAGTACGACGAGTCGGGCCCCTCCA
+
IIIIFFF<[email protected][email protected]###############
Где удалить чтения, которые не содержат последовательность.
Этот скрипт работает правильно. Но я не пишу регулярное выражение, чтобы получить то, что вы хотите
awk '/\n[GATC]*\n/' RS=+ ORS=+
после работы скрипта я ожидал увидеть это output file. К этому link вы увидите выражение, которое описывает строки, которые я хочу удалить.
Что вы хотите сказать? – Wintermute
Какой язык и какое регулярное выражение использовать для удаления многострочного шаблона из входного файла? –
Пока вы продолжаете использовать sed для проблем, охватывающих несколько строк, вам придется полностью переписывать их каждый раз, когда у вас будет минимальное изменение требований, и вам, вероятно, придется просить помощи для этого. Все эти дурацкие, архаичные односимвольные конструкторы sed для обработки нескольких строк стали устаревшими в середине 1970-х годов, когда был изобретен awk. Это была специальная работа awk (ориентированная на запись, а не ориентированная на линию), - просто используйте ее. –