|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Jul 2002
Città: Hampstead, London
Messaggi: 2449
|
[Regular expression] selezionare tag html
problema apparentemente banale:
- ho una pagina web che non conosce il significato di "standard" - devo estrarre tramite un programma java delle informazioni da queste pagine web, procedendo ad albero con determinati link selezionati dalla prima pagina le soluzioni sono molteplici: parserHTML, dom, sax, parser manuale (in ordine di complessità) tuttavia per i primi tre casi ho bisogno comunque di "ripulire" il il codice html della pagina dalla tonnellata di sporcizie, per poter passare il file al parser. Basandomi sul concetto che tutto ciò che mi interessa da quella pagina è una sua versione gerarchicamente strutturata (senza necessariamente mantenere intatti tutti i tag html) ho iniziato a sostituire diverse stringhe con una versione "pulita" ed eliminando quelle "unpaired" (img e compagnia bella) tramite espressioni regolari. Il procedimento di pulitura proseguiva liscio per ogni capriccio del creatore del DOM finchè mi sono ritrovato a combattere con l'eliminazione dei tag <script> ... </script> problema 1: alcune righe del file usano il carriage return, altre il new line, altre il tab new line (nella sintassi regexp /r/n/t) il .(punto) non comprende questi caratteri problema 2: mi ritrovo alcune parentesi acute all'interno dello script, non posso utilizzare [^<]* per terminare la selezione del tag, come ho fatto per gli altri probabilmente ho fatto anche altri tentativi, ma penso di avervi detto tutto PS: se avete anche dei consigli su come risolvere il problema in modo alternativo sono molto ben accetti
__________________
stabilmente instabile |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 16:11.



















