Gå til innhold

C#: [Løst] Finne et nummer som forandrer seg i en string


Anbefalte innlegg

Holder på med et lite prosjekt hvor jeg vil hente ut data fra en nettside. Får hentet ned siden, men vil hente ut et spesifikt tall som endrer seg fra tid til annen.

 

Er det noen måte å søke opp teksten som kommer før, og så hente ut de 2-3 neste bokstavene?

 

"Avg/ -72 dB Last</span>" er tallet 72 jeg er ute etter, men det endrer seg hele tiden.

Lenke til kommentar
Videoannonse
Annonse
private static readonly Regex SpanRegex = new Regex(@"Avg/ -(?<Number>\d+) dB Last\</span\>", RegexOptions.Compiled);

public static int ReadNumber(string input)
{
 var m = SpanRegex.Match(input);
 if(m.Success)
   // Tallet vil alltid la seg parse så lenge brukeren ikke har en helt sinnsyk culture, så benytt Parse fremfor TryParse
   return int.Parse(m.Groups["Number"].Value);
 throw new FormatException();
}

Endret av GeirGrusom
  • Liker 1
Lenke til kommentar
  • 3 uker senere...

private static readonly Regex SpanRegex = new Regex(@"Avg/ -(?<Number>\d+) dB Last\</span\>", RegexOptions.Compiled);

public static int ReadNumber(string input)
{
 var m = SpanRegex.Match(input);
 if(m.Success)
// Tallet vil alltid la seg parse så lenge brukeren ikke har en helt sinnsyk culture, så benytt Parse fremfor TryParse
return int.Parse(m.Groups["Number"].Value);
 throw new FormatException();
}

 

hvis det ikke står noe forann eller bak, kan man bruke tags fra html koden?

Lenke til kommentar

Koden jeg skrev matcher akkurat det du forklarte. Ikke noe annet. Hva som står foran eller bak er uvesentlig så lenge det ikke vil matche mønsteret.

 

takk, var ikke min tråd btw, bare hijacka den :p

Endret av jeIIy
Lenke til kommentar

Regexen ignorerer hva det måtte være av HTML formatering. Den ignorerer faktisk all formatering som måtte være. Den søker rett og slett etter teksen "Avg/ -" etterfulgt av 1 eller flere tegn mellom 0 og 9, etterfulgt av teksten " dB Last</span>"

 

Så hva du måtte ha av HTML foran eller bak er irrelevant. Regex er et tekstsøkeverktøy.

Lenke til kommentar

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...