ich folgende Javascript bin mit Strings aus einer Textdatei lesen und sie mit einem regulären AusdruckJavascript Regular Expression nicht jedes anderes Mal aufgerufen wird
while (!textFile.AtEndOfStream)
{
currLine = textFile.ReadLine();
match = re.exec(currLine);
do stuff with match
}
Das Problem, das ich habe ist, dass jede andere Zeit verarbeiten re.exec heißt es schlägt fehl und gibt null zurück; Die erste Zeile wird also korrekt verarbeitet, aber die zweite Zeile führt zu null, dann funktioniert die dritte Zeile und die vierte Zeile ergibt null.
kann ich den folgenden Code verwenden, um das Ergebnis I
while (!textFile.AtEndOfStream)
{
currLine = textFile.ReadLine();
match = re.exec(currLine);
if (match == null) match = re.exec(currLine);
}
will zu bekommen, aber das scheint ein wenig eine heftige Flickschusterei. Kann mir jemand sagen, warum das passiert und was ich tun kann, um es richtig zu beheben?
Andy E hat die richtige Lösung, aber falls Sie interessiert sind, könnten Sie die letzte Zeile in 'match = match || ändern re.exec (currLine); ' – Skilldrick
@Skilldrick: gelöscht meins, weil Bobincos Antwort vollständiger war. Jetzt hat er die richtige Lösung :-) –