Symbolische Gruppennamen (wie in Python) in regulärem Ruby-Ausdruck

7

Ist in Python auf dieses praktische Dienstprogramm für reguläre Ausdrücke gestoßen (ich bin ein Anfänger in Python). z.B. Mit dem Regexp

%Vor%

Ich kann auf die übereinstimmenden Daten als

verweisen %Vor%

(Vollständige Dokumentation: Suchen Sie nach "symbolischer Gruppenname" hier )

In Ruby können wir auf die übereinstimmenden Referenzen mit , oder mit dem MatchData-Objekt ( m[1], m[2] usw.) zugreifen. Gibt es etwas Ähnliches wie Pythons Symbolic Group Names in Ruby?

    
arnab 19.01.2010, 01:14
quelle

2 Antworten

11

Ältere Ruby-Versionen hatten keine benannten Gruppen (tx Alan, um dies in einem Kommentar anzugeben!), aber wenn Sie Ruby 1.9 verwenden ...:

(?<name>subexp) drückt eine benannte Gruppe auch in Ruby-Ausdrücken aus; \k<name> ist die Art, wie Sie eine benannte Gruppe als Ersatz referenzieren, wenn Sie das suchen!

    
Alex Martelli 19.01.2010, 01:27
quelle
10

Ruby 1.9 führte benannte Captures ein:

%Vor%

Sie können \k<prefix> usw. für Rückverweise verwenden.

    
Marc-André Lafortune 19.01.2010 03:14
quelle

Tags und Links