2009-09-11 3 views
0

Я хотел бы, чтобы извлечь элементы из этого примера HTML, более специфический, я хотел бы выделить следующие из них: algp1, ПРОИЗВОДСТВА GEN_APPL KantoorИзвлечение данных с регулярным выражением из HTML

<table width="95%" border="1"> 
<tr><td colspan=3><a name="algp1"></a><img src="menu/db2inst.jpg"> <font color="#FF0000" size="+1">algp1</font> (PRODUCTION, 50733)</td></tr> 
<tr><td width="20%" valign=top><a name="GENAPPLP"></a><img src="menu/db2db.jpg"><font color="#00CC00"><b> GEN_APPL</font></b><br>(GENAPPLP)</td><td width="15%" valign=top>PARK</td><td width="70%" valign=top><font size="2">BOOKINGCARPARKING&sbquo; CUSTOMERS&sbquo; </font></td></tr> 
<tr><td width="20%" valign=top></td><td width="15%" valign=top>RDC</td><td width="70%" valign=top><font size="2">DBREL_SCHEMA_RDCPROJECT&sbquo; DBVERSION&sbquo; </font></td></tr> 
<tr><td width="20%" valign=top><a name="KANTOORP"></a><img src="menu/db2db.jpg"><font color="#00CC00"><b> KANTOOR</font></b><br>(KANTOORP)</td><td width="15%" valign=top>CDDB</td><td width="70%" valign=top><font size="2">BATIMENTS&sbquo; BATIMENTS_EXC&sbquo; OFFICES&sbquo; OFFICES_EXC&sbquo; RECETTES&sbquo; RECETTES_EXC&sbquo; </font></td></tr> 
<tr><td width="20%" valign=top></td><td width="15%" valign=top>IDR</td><td width="70%" valign=top><font size="2">ADMINISTRATION&sbquo; ADMINISTRATION_EXC&sbquo; ARROND&sbquo; ARROND_EXC&sbquo; BUREAU&sbquo; BUREAU_EXC&sbquo; CODEX&sbquo; CODEX_EXC&sbquo; COMMUNE&sbquo; COMMUNE_EXC&sbquo; COMPETENCE&sbquo; COMPETENCE_EXC&sbquo; COMPTE&sbquo; COMPTE_EXC&sbquo; LNKBCC&sbquo; LNKBCC_EXC&sbquo; LNKBCI&sbquo; LNKBCI_EXC&sbquo; LNKBPC&sbquo; LNKBPC_EXC&sbquo; LNKBS&sbquo; LNKBS_EXC&sbquo; LNKCBRR&sbquo; LNKCBRR_EXC&sbquo; LNKCS&sbquo; LNKCS_EXC&sbquo; MAP_CP_BUREAU&sbquo; PAYS&sbquo; PAYS_EXC&sbquo; PROVINCE&sbquo; PROVINCE_EXC&sbquo; RANGE_RUE&sbquo; RANGE_RUE_EXC&sbquo; REGION&sbquo; REGION_EXC&sbquo; RUE&sbquo; RUE_EXC&sbquo; SERVICE&sbquo; SERVICE_EXC&sbquo; TPCODEX&sbquo; TPCODEX_EXC&sbquo; TPCOMPTE&sbquo; TPCOMPTE_EXC&sbquo; </font></td></tr> 
<tr><td width="20%" valign=top></td><td width="15%" valign=top>RDC</td><td width="70%" valign=top><font size="2">DBREL_SCHEMA_RDCPROJECT&sbquo; DBVERSION&sbquo; </font></td></tr> 
</table> 
+0

Лучше использовать реальный анализатор, если это возможно. – Gumbo

ответ

2

Выезд JTidy. Он проанализирует HTML и даст вам интерфейс DOM для повторения.

Я бы настоятельно рекомендовал не использовать регулярное выражение для всех, кроме самых простых случаев. HTML не является регулярным и не имеет конца крайних случаев, чтобы покончить с вами.

+0

+1, не используйте RegEx больше всего, потому что, используя его, у вас будет 2 проблемы. И, пожалуйста, сделайте небольшой поиск перед публикацией, есть миллиард раз этот вопрос http://stackoverflow.com/questions/299942/regex-matching-html-tags-and-extracting-text и http: // stackoverflow. com/questions/181095/regular-expression-to-extract-text-from-html и т. д. –

+0

http://stackoverflow.com/questions/26638/what-html-parsing-libraries-do-you-recommend-in-java предлагает несколько библиотек, которые выполняют сортировку и разбор. Но ваш ответ поставил меня в правильном направлении. Спасибо. – elhoim

0

Взгляните на regulazy ...

Это позволит создать регулярное выражение из входной строки с простой точкой и нажмите интерфейс.

http://osherove.com/tools/

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