В awk:
START /<close tag regex>/ noprefix=="false" noprefix=="true" /<open tag regex>/
Я хочу написать скрипт, который находит пару тегов открытия / закрытия в текстовом файле и добавляет фиксированную строку к каждой строке между парой. Я полагаю, что я использую grep, чтобы найти номера строк тега, и awk или sed, чтобы разместить теги, однако я не уверен, как именно это сделать.
Может кто-нибудь помочь?
В awk:
START /<close tag regex>/ noprefix=="false" noprefix=="true" /<open tag regex>/
Это должно быть сделано одним из традиционно синтаксических языков (yacc и т. Д.). Выполнение этого с помощью grep и тому подобного может быть приемлемым для конкретных случаев, но регулярное выражение просто недостаточно мощно, чтобы уловить тонкости HTML.
Вы должны рассмотреть возможность использования yacc для этого. Это невозможно сделать с помощью sed, awk или grep без значительных усилий. Что касается изучения yacc, это не займет больше времени, чем изучение sed / awk / grep. И так будет легко.