Problem mit Regulären Ausdrücken

forsterm

Erfahrenes Mitglied
Hallo,
heute wollte ich versuchen mit vb.NET aus einem mehrzeigligem Text folgende Zeile
Code:
<!-- Die Suche brauchte insgesamt 0.149755 Sekunden -->
auszulesen. So weit ich weiß funktioniert das mit Regulären Ausdrücken,
habe dazu folgendes getestet:
Code:
Me.txtHtml.Text = New Regex("(.*)<!-- Die Suche brauchte insgesamt (\d) Sekunden -->(.*)", RegexOptions.IgnoreCase Or RegexOptions.Multiline).Replace(Me.txtHtml.Text, "$2")
Das funktioniert auch, jedoch leider nur, wenn die Zahl nur aus einer Ziffer besteht.
Das ist Problem Nummer 1. Problem Nummer 2 ist, dass ich leider nicht weiß,
wie ich es umschreiben muss, dass er mir 0.149755 mit dem Punkt ausgibt.

Hoffe, hier kann mir jemand weiterhelfen.

mfg
forsterm
 
Verwende einfach eine Zeichenklasse:
Code:
Me.txtHtml.Text = New Regex("(.*)<!-- Die Suche brauchte insgesamt ([0-9.]+) Sekunden -->(.*)", RegexOptions.IgnoreCase Or RegexOptions.Multiline).Replace(Me.txtHtml.Text, "$2")
 
Hallo,
ok, mit folgendem Code:
Code:
Me.txtHtml.Text = New Regex("(.*)<!-- Die Suche brauchte insgesamt ([0-9.]+) Sekunden -->(.*)", RegexOptions.IgnoreCase Or RegexOptions.Multiline).Replace(Me.txtHtml.Text, "$2")
funktioniert es, jedoch nur wenn alles in einer Zeile steht.
Sprich aus dem hier:
Code:
<html>
<head>
<title>Titel</title>
</head>
<body>
<!-- Die Suche brauchte insgesamt 0.346742 Sekunden -->
</body>
</html>
wird das hier:
Code:
<html>
<head>
<title>Titel</title>
</head>
<body>
0.346742
</body>
</html>
Es sollte aber eigentlich das
Code:
0.346742
rauskommen.

mfg
forsterm
 

Neue Beiträge

Zurück