Gå til innhold

C#: Regex for å hente ut en node i et htmldokument


Anbefalte innlegg

Skrevet

Hei

 

Driver og leker meg litt med HTML scraping.

 

Går greit å hente ut f.eks. linker med tittel etc.

 

Men nå vil jeg ha grupper som er en stor del av dokumentet.

 

Har feks. en <ul>

 

Denne inneholder mange <li>

 

Disse igjen inneholder mange andre tags f.eks. <div>, <a>, <p>.

 

Det jeg ønsker er å hente ut hver <li> som en match som jeg skal bruke til noe i etterkant.

 

Eks.

 

<ul>
 <li>
 <h1>Test</h1>
 <div class="test">
<p>teste teste</p>
 </div>
 <img src="..."/>
 </li>

 <li>
  ... ca samme som over
 </li>

</ul>

 

Noen ideer?

 

Mulig det er andre bedre måter å gjøre det på også... DOM og slikt, men har ikke så god greie på det...

Videoannonse
Annonse
Skrevet

Du kan bruke denne for å hente ut innholdet i alle list items på siden

<li>\s*(?<listitem>.*?)\s*</li>

 

Hvis du har flere UL-er på siden kan du bruke denne først til å hente ut alle UL-ene og deretter kjøre det forrige RexExpet på hvert av innholdene.

<ul>\s*(?<list>.*?)\s*</ul>

 

Tips: Bruk Expresso til å teste og utarbeide RegExper.

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...