Hi,
in einer Streamreader-Schleife soll wg. Massendaten die jew. Zeile geprüft werden, ob sie mit einen numerischen Value beginnt. Das 1. Zeichen reicht bereits.
Aktuell mache ich das mit der Anweisung.
if (Regex.IsMatch(line, @"^\d"))
{}
Gibt es etwas schnelleres als Regex, da die Performance extrem wichtig ist?
Das hier sieht auch nicht sonderlich elegant aus ...!?
List<string>checkValues = new List<string> { "0","1","2","3","4","5","6","7","8","9" };
string firstWord = line.Substring(0,1);
if (checkValues.IndexOf(firstWord) != -1)
{}
Merci
LG
Nicole
Bitte benutze die Code-Tags! [Hinweis] Wie poste ich richtig? Punkt 6
Hallo gpc44,
Ich glaube eher nicht, dass Regex hier das Performanceproblem ist. Allerdings geht es eleganter (und vielleicht auch etwas schneller) mit
if(!string.IsNullOrEmpty(line) && char.IsNumber(line[0]) { ... }
Wenn aber wirklich ein Performanceproblem vieliegt ist es sicher nicht das gewesen.
LG pdelvo
Hallo pdelvo,
hier wäre wohl IsDigit eher das gewünschte als IsNumber.
herbivore
Alles ist schneller als Regex.
Benchmarking IsNumeric Options