Texmate regex и найти и заменить? - PullRequest
0 голосов
/ 27 ноября 2010

У меня более 300 пунктов в списке, которые мне нужно изменить структуру.В настоящее время они структурированы следующим образом:

<li rel="/images/employees/kristi-robison-animated.gif">
    <hgroup>
        <h1>Kristi Robison</h1>
        <h2>Senior Proofreader</h2>
    </hgroup>
    <img src="/images/css/shim.gif" data-static="/images/employees/kristi-robison-static.gif" alt="Kristi Robison">
</li>

... и мне нужно перестроить его следующим образом:

<li>
    <hgroup>
        <h1>Kristi Robison</h1>
        <h2>Senior Proofreader</h2>
    </hgroup>
    <img src="/images/css/shim.gif" data-static="/images/employees/kristi-robison-static.gif" data-animated="/images/employees/kristi-robison-animated.gif" alt="Kristi Robison">
</li>

Потому что есть так много, что я не хочу проходитьи сделать это вручную.Есть ли способ сделать это с помощью регулярного выражения и найти и заменить?

Ответы [ 3 ]

2 голосов
/ 27 ноября 2010

Напишите сценарий, они действительно хороши в этих вещах!Попробуйте передать ваш HTML-файл в этот скрипт на Ruby, например:

while line = gets
  if line[/^(.+?)<li rel="(.+?)">/]
    rel = $2
    line = "#$1<li>"
  elsif line[/^(.+?)<img src="(.+?)" data-static="(.+?)" alt="(.+?)">/]
    line = "#$1<img src=\"#$2\" data-static=\"#$3\" data-animated=\"#{rel}\" alt=\"#$4\">"
  end
  puts line
end
0 голосов
/ 27 ноября 2010

Я не знаю, в частности, о Texmate, но вот регулярное выражение, которое делает это, например, в sed:

sed 's/li rel="[^"]*">/li>/' 

Надеюсь, это поможет.

0 голосов
/ 27 ноября 2010

совершенно не по теме, но можете ли вы даже добавить hgroup и заголовки в li? Я немного новичок в html5, так что, может быть, это действительно так, вы проверяли?

...