Da ich angefangen habe, reguläre Ausdrücke zu lernen, werde ich auch beschreiben, wie man sie als Erinnerung verwendet.
Angenommen, Sie haben ein Profil wie dieses:
text = <<TEXT
Geburtstag:Geboren am 6. Mai 1234
Postleitzahl:789-1111
TEXT
(\d+)Jahr(\d+)Mond(\d+)Tag
#=> 1234,5,6 wird extrahiert.
#=>Unten stimmt auch das Kanji des Datums überein.
\d+Jahr\d+Mond\d+Tag
#=>6. Mai 1234
** \ d ** ・ ・ ・ Nummer mit halber Breite (unabhängig von der Ziffer) ** + ** ・ ・ ・ Das vorherige Zeichen oder Muster ist mindestens einmal fortlaufend ** () ** ・ ・ ・ Erfassen oder gruppieren Sie intern übereinstimmende Zeichenfolgen ** Jahr, Monat, Tag ** ・ ・ ・ Kein Metazeichen, nur eine Zeichenkette
p text[/\d{3}-\d{4}/].gsub('-','')
#=>7891111
** / (Regulärer Ausdruck) / ** ・ ・ ・ Erstellen Sie ein Objekt mit regulärem Ausdruck, das von / umgeben ist (in Liter als "Literal für reguläre Ausdrücke in Ruby" bezeichnet). ** [] ** ・ ・ ・ String-Klassenmethode, die den Teil, der dem regulären Ausdruck entspricht, aus der Zeichenfolge extrahiert. Die Alias-Methode ist die ** Slice ** -Methode. ** {3}, {4} ** ・ ・ ・ Das vorherige Zeichen (in diesem Fall \ d) wird für die in {} eingeschlossene Nummer fortgesetzt. ** - ** ・ ・ ・ Keine Metazeichen, nur Bindestriche. (Beachten Sie, dass Bindestriche je nach Schreibweise einen "Zeichenbereich" darstellen können.) ** gsub ('1. Argument', '2. Argument') ** ・ ・ ・ Ersetzen Sie die Zeichenfolge, die dem 1. Argument entspricht, durch die Zeichenfolge des 2. Arguments. Im obigen Fall wird die Zeichenfolge "-" in "" konvertiert (was Löschen bedeutet). Die ** Slice ** -Methode und die ** gsub ** -Methode haben jeweils eine "destruktive Methode ()". () Eine Methode, die den Status des aufgerufenen Objekts ändert. Fügen Sie am Ende "!" Hinzu.
Reguläre Ausdrücke können visuell mit Tools bestätigt werden, die ausprobiert und fehlerhaft sind, da sie Metazeichen vollständig nutzen.
https://rubular.com/
Ein regulärer Ausdruck, mit dem Zeichenfolgen gesucht und ersetzt werden können. Ich wollte es in naher Zukunft beherrschen, deshalb habe ich zuerst die grundlegenden Lerninhalte beschrieben. Vielen Dank, dass Sie so weit gelesen haben.
Recommended Posts