Javascript Regex: соответствие текста НЕ части HTML-тега

Я бы действительно хотел чтобы иметь Regex, который исполняется в node.js (поэтому нет обработки jQuery DOM и т. д., потому что теги могут иметь другое вложение), который соответствует всему тексту, который НЕ является тегом HTML или его частью, в отдельные группы.

Например. Я хотел бы сопоставить "5", "ELT.", "SPR", "", "plo", "Unterricht", "", "& nbsp" и "plo" из этой строки:

<tr class='list even'>
    <td class="list" align="center" style="background-color: #FFFFFF" >
        <span style="color: #010101">5</span>
    </td>
    <td class="list" align="center" style="background-color: #FFFFFF" >
        <b><span style="color: #010101">ELT.</span></b>
    </td>
    <td class="list" align="center" style="background-color: #FFFFFF" >
        <b><span style="color: #010101">SPR</span></b>
    </td>
    <td class="list" style="background-color: #FFFFFF" >&nbsp;</td>
    <td class="list" align="center" style="background-color: #FFFFFF" >
        <strike><span style="color: #010101">pio</span></strike>
    </td>
    <td class="list" align="center" style="background-color: #FFFFFF" >
        <span style="color: #010101">Unterricht</span>
    </td>
    <td class="list" style="background-color: #FFFFFF" >&nbsp;</td>
    <td class="list" style="background-color: #FFFFFF" >&nbsp;</td>
    <td class="list" align="center" style="background-color: #FFFFFF" >
        <b><span style="color: #010101">pio</span></b>
    </td>
</tr>

Могу заверить, что внутри тегов не будет символов ">".

Я нашел решение (? <= ^ |>) [^> <] +? (? = <| $) , но оно не будет работать в node.js (возможно, потому что в прогнозе? Там написано "Недопустимая группа")

Есть предложения? (и да, я действительно думаю, что Regex - правильный путь, потому что html может быть вложен другими способами, а содержимое всегда имеет тот же порядок, потому что это таблица)

6
задан Bakudan 24 September 2011 в 17:28
поделиться