Ich habe eine Textdatei, die Zeilen von Daten durch Zeilenumbrüche getrennt hat. Was ich versuche, ist die Anzahl der Zeilen in der Datei zu zählen, ausgenommen diejenigen, die nur eine Zeilenumbruch sind.Nur ein Zeilenumbruch Zeichen
Ich versuche, einen regulären Ausdruck zu verwenden, um jede Zeile zu lesen, wie es gelesen wird, und wenn es mit einem Newline-Zeichen beginnt, nicht in meiner Zeilenanzahl enthalten, aber ich kann nicht scheinen, es zu funktionieren . Ich habe überall nach dem gesucht, wie dies ohne Ergebnisse funktioniert.
Hier ist die Methode, die ich geschrieben habe, um zu versuchen, dies zu tun:
public int LineCounter()
{
StreamReader myRead = new StreamReader(@"C:\TestFiles\test.txt");
int lineCount = 0;
string line;
while ((line = myRead.ReadLine()) != null)
{
string regexExpression = @"^\r?\n";
RegexOptions myOptions = RegexOptions.Multiline;
Match stringMatch = Regex.Match(line, regexExpression, myOptions);
if (stringMatch.Success)
{
}
else
{
lineCount++;
}
}
return lineCount;
}
Ich habe versucht, die RegexOptions zwischen Singleline
und Multiline
zu ändern, habe ich versucht, "\r|\n|\r\n"
in mein Muster Spiel setzen, und ich Ich habe versucht, die ^
aus dem Ausdruck zu entfernen, aber ich kann nicht scheinen, um es zum Laufen zu bringen. Egal, was ich tue, meine endet immer die Gesamtzahl der Zeilen in der Datei, einschließlich der Zeilenumbrüche.
Ich übersehe offensichtlich etwas offensichtlich, aber ich bin noch nicht genug vertraut mit der C# Sprache, um zu sehen, was los ist. Alles sieht so aus, als würde es mir gut gehen. Kann mir bitte jemand helfen?
Try 'zählen wollen @ "^ $ \ r? \ N?"' –
ich mit einem anderen Ansatz @newStackExchangeInstance beschlossen zu gehen, aber das ist meine regex fixiert. Danke :) – CurtisFreak