2014-12-07 2 views
0

У меня есть таблица даже & нечетной строки, как этотИЛИ условие регулярных выражений шаблона

<table id="overviewTable" class="dataTable labelValueTable"> 
<tr class="even"> 
    <td class="label">A</td> 
<td> 
<a href="#">A</a></td> 
</tr> 
<tr class="odd"> 
    <td class="label">A</td> 
    <td>B</td> 
</tr> 
<tr class="even"> 
    <td class="label">A</td> 
<td>C</td></tr> 
<tr class="odd"> 
<td class="label">A</td> 
<td>D</td></tr> 

и я написал образец для него, как этот

@<tr class="(even|odd)">(.*?)<\/tr>@si 

, но он не работает .Как я могу это исправить?

+1

Работает для меня ... что конкретно не работает? https://regex101.com/r/dS8mW7/1 – John

+0

Вы не написали, что не работает, то есть то, что вы ожидали и что получаете в настоящее время. Я предполагаю, что вам нужно содержимое строки из-за '(. *?)'. Но для выражения OR вы использовали также группу маркировки, и поэтому найденные ссылки на 1 $ ** даже ** или ** нечетные **. Измените выражение на '@ (. *?) <\/tr> @ si' использовать группу без маркировки для выражения OR. Удалите свой вопрос, если мой комментарий является решением. В противном случае отредактируйте свой вопрос с информацией, что не работает должным образом. – Mofi

+0

@Mofi: Когда я меняю регулярное выражение на "@ (. *?) <\/tr> @sgi" Я вижу это предупреждение, а мой массив пуст. Preg_match_all(): Неизвестный модификатор ' г' –

ответ

Смежные вопросы