Хорошо, регулярные ряды ниндзя. Я пытаюсь разработать шаблон для добавления гиперссылок в концевые сноски в файле eHPML ePub ebook. Проблема в том, что нумерация перезапускается в каждой главе, поэтому мне нужно добавить уникальный идентификатор к имени привязки, чтобы связать его с хэш-ссылкой.Можно ли использовать регулярное выражение для копирования заголовка в каждую запись до следующего заголовка? (Гиперссылки концевых сносок в электронной книге)
Учитывая (очень упрощенный) список, как это:
<h2>Introduction</h2>
<p> 1 Endnote entry number one.</p>
<p> 2 Endnote entry number two.</p>
<p> 3 Endnote entry number three.</p>
<p> 4 Endnote entry number four.</p>
<h2>Chapter 1: The Beginning</h2>
<p> 1 Endnote entry number one.</p>
<p> 2 Endnote entry number two.</p>
<p> 3 Endnote entry number three.</p>
<p> 4 Endnote entry number four.</p>
мне нужно, чтобы превратить его в нечто вроде этого:
<h2>Introduction</h2>
<a name="endnote-introduction-1"></a><p> 1 Endnote entry number one.</p>
<a name="endnote-introduction-2"></a><p> 2 Endnote entry number two.</p>
<a name="endnote-introduction-3"></a><p> 3 Endnote entry number three.</p>
<a name="endnote-introduction-4"></a><p> 4 Endnote entry number four.</p>
<h2>Chapter 1: The Beginning</h2>
<a name="endnote-chapter-1-the-beginning-1"></a><p> 1 Endnote entry number one.</p>
<a name="endnote-chapter-1-the-beginning-2"></a><p> 2 Endnote entry number two.</p>
<a name="endnote-chapter-1-the-beginning-3"></a><p> 3 Endnote entry number three.</p>
<a name="endnote-chapter-1-the-beginning-4"></a><p> 4 Endnote entry number four.</p>
Очевидно, что необходимо будет аналогичный поиск в фактическом текст книги, где каждая сноска будет связана с endnotes.xhtml#endnote-introduction-1
и т. д.
Самое большое препятствие в том, что поиск каждого матча начинается ПОСЛЕ предыдущего поиска, поэтому, если вы не используете рекурсию, вы не можете сопоставить один и тот же бит (в данном случае название) для нескольких записей. Однако мои попытки рекурсии дали лишь бесконечные циклы.
Я использую grep-движок TextWrangler, но если у вас есть решение в другом редакторе (например, vim), это тоже хорошо.
Спасибо!
Анализ HTML с регулярным выражением? Взгляните на это http://stackoverflow.com/questions/1732348/regex-match-open-tags-except-xhtml-self-contained-tags – Penang