Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Регулярные Выражения

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Регулярное выражение в регулярном
 
 автор: Igoris   (10.05.2007 в 13:13)   письмо автору
 
 

Как извлечь из HTML кода:

<td class=tdbr>Физическая культура (зачёт)</td>
<td class=tdbr><font color=red>Н/З_1</font><br><font color=red>Н/З_2</font><br><font color=red>Н/З_3</font><br><font size=-2>Зач</font></td>
<td class=tdb>15.12.05<br>30.12.05<br>17.02.06</td>


Название предмета
Сдачи
Даты

При этом количество пересдач неизвестно

Пробовал сделать
$pattern2 = "~<td class=tdbr>([^<]*)</td>[^<]+<td class=tdbr>(?:<font color=red>([^<]*)</font><br>)+<font size=-2>([^<]*)</font></td>~";
preg_match_all($pattern2,$text,$Exams,PREG_PATTERN_ORDER); 


Но выдается только последний Н/З как все-таки добиться, чтобы получать весь список
Array
(
[0] => Физическая культура (зачёт)
Н/З_1
Н/З_2
Н/З_3
Зач
)

[1] => Array
(
[0] => Физическая культура (зачёт)
)

[2] => Array
(
[0] => Н/З_3
)

[3] => Array
(
[0] => Зач
)

)
я может что-то не понимаю, кто знает помогите пожалуйста

   
 
 автор: EXP   (10.05.2007 в 15:42)   письмо автору
 
   для: Igoris   (10.05.2007 в 13:13)
 

Можно примерно так
<?  $pattern2  "~<td[^>]*>((?!</td).)*?</td[^>]*>~si";
 
preg_match_all($pattern2$text$examsPREG_PATTERN_ORDER);
print_r($exams);
print 
'<hr>';
for(
$i 0$i count($exams[0]); $i++)
{
 
$arr[$i] = preg_split ('#\s*(</?[^>]+>)+\s*#'$exams[0][$i], -1PREG_SPLIT_NO_EMPTY); 
print_r($arr[$i]);
print 
'<hr>';
}

   
 
 автор: Igoris   (11.05.2007 в 07:09)   письмо автору
 
   для: EXP   (10.05.2007 в 15:42)
 

Спасибо!

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования