Scanner.useDelimiter mit regulären Ausdrücken verstehen
In der Scanner-API von Java können Sie mit der Methode useDelimiter() ein Trennzeichen zum Teilen angeben Geben Sie Text in Token ein. Es können jedoch auch andere Trennzeichen als Leerzeichen verwendet werden, was ein Verständnis der Muster regulärer Ausdrücke (Regex) erfordert.
Regex-Muster in useDelimiter()
So verwenden Sie ein Trennzeichen mit Wenn Sie Delimiter() verwenden, müssen Sie ein Regex-Muster bereitstellen. Dieses Muster definiert die Zeichen oder Sequenzen, die die Token trennen sollen.
Der folgende Codeausschnitt verwendet beispielsweise das Trennzeichen „|,|rn“, um die Eingabe basierend auf Kommas (",") oder neuen Zeilen aufzuteilen (rn):
sc = new Scanner(new File(dataFile)); sc.useDelimiter(",|\r\n");
Das bedeutet, dass der Scanner Kommas und neue Zeilen als Trennzeichen behandelt und die Eingabe aufteilt Tokens.
Beispiele
Um zu veranschaulichen, wie useDelimiter() mit Regex-Mustern funktioniert, betrachten Sie das folgende Beispiel:
String input = "1 fish 2 fish red fish blue fish"; // Use "\s*fish\s*" as the delimiter to split the input Scanner s = new Scanner(input).useDelimiter("\s*fish\s*"); System.out.println(s.nextInt()); // prints: 1 System.out.println(s.nextInt()); // prints: 2 System.out.println(s.next()); // prints: red System.out.println(s.next()); // prints: blue
Hier das Trennzeichen „sfishs“ entspricht 0 oder mehr Wiederholungen von Leerzeichen („s*“), gefolgt vom Wort „fish“ und wieder 0 oder mehr Wiederholungen von Leerzeichen. Dadurch wird die Eingabe anhand des Trennzeichens in Token aufgeteilt und der Scanner kann die gewünschten Werte extrahieren.
Zusätzliche Ressourcen
Weitere Informationen zu useDelimiter( ) und Regex-Muster finden Sie in den folgenden Ressourcen:
Das obige ist der detaillierte Inhalt vonWie kann Javas „Scanner.useDelimiter()' mit regulären Ausdrücken verwendet werden, um Eingaben aufzuteilen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!