class methods
|
compile
|
Regexp.compile( muster[, optionen[sprache]] )
-> einRegAusdr |
|
Synonym für Regexp.new .
|
escape
|
Regexp.escape( einString )
-> einNeuerString |
|
Eliminiert alle Zeichen, die in einem regulären Ausdruck eine spezielle Bedeutung hätten.
Regexp.escape(str)=~str ergibt für jeden beliebigen String
true .
Regexp.escape('\\*?{}.') |
» |
\\\\\*\?\{\}\. |
|
last_match
|
Regexp.last_match
-> einErgebnis |
|
Gibt das letzte MatchData -Objekt zurück, das vom letzten erfolgreichen
Mustervergleich erstellt wurde. Equivalent mit dem Auslesen der globalen Variable $~ .
Die Klassendokumentation von MatchData findet sich weiter oben.
|
new
|
Regexp.new( muster[, optionen[sprache]] )
-> einRegAusdr |
|
Erstellt einen neuen regulärend Ausdruck aus muster, das entweder ein String
oder ein Regexp sein (im letzteren Fall werden die Optionen dieses regulären Ausdrucks
nicht weitergegeben). Wenn optionen eine Fixnum ist, sollten es ein oder
mehrere ODER-verknüpfte Werte aus Regexp::EXTENDED , Regexp::IGNORECASE und
Regexp::POSIXLINE sein.
Wenn andererseits optionen nicht nil ist, berücksichtigt der Ausdruck keine
Groß-/Kleinschreibung. Der Parameter sprache ermöglicht eine Multibyte-Unterstützung
für den Ausdruck: `n', `N' = none, `e', `E' = EUC, `s', `S' = SJIS, `u', `U' = UTF-8.
r1 = Regexp.new('^a-z+:\\s+\w+') |
» |
/^a-z+:\s+\w+/ |
r2 = Regexp.new(r1, true) |
» |
/^a-z+:\s+\w+/i |
r3 = Regexp.new(r2, Regexp::EXTENDED) |
» |
/^a-z+:\s+\w+/x |
|
quote
|
Regexp.quote( einString )
-> einNeuerString |
|
Synonym für Regexp.escape .
|
instance methods
|
==
|
rxp == einRegAusdr-> true oder false |
|
Gleichheit---Zwei reguläre Ausdrücke sind gleich, wenn ihre Muster identisch sind, sie auf
demselben Zeichensatz fußen und ihre casefold? -Werte gleich sind.
/abc/ == /abc/x |
» |
true |
/abc/ == /abc/i |
» |
false |
/abc/u == /abc/n |
» |
false |
|
===
|
rxp === einString-> true oder false |
|
Fallgleichheit---Synonym für Regexp#=~
das in Case-Ausdrücken verwendet wird.
a = "HELLO"
case a
when /^a-z*$/; print "Lower case\n"
when /^A-Z*$/; print "Upper case\n"
else; print "Mixed case\n"
end
|
produces:
|
=~
|
rxp =~ einString-> einInteger oder nil |
|
Vergleich---Vergleicht rxp mit einString. Gibt den Offset des getroffenen
Teilstrings vom ersten Zeichen in einString bzw. nil wenn kein Treffer
erzielt wurde zurück.
/SIT/ =~ "insensitive" |
» |
nil |
/SIT/i =~ "insensitive" |
» |
5 |
|
~
|
~ rxp-> einInteger oder nil |
|
Vergleich---Vergleicht rxp mit dem Inhalt von $_ . Equivalent mit
rxp =~ $_ .
$_ = "input data" |
~ /at/ |
» |
7 |
|
casefold?
|
rxp.casefold? -> true oder false |
|
Gibt den Wert des Groß-/Kleinschreibungs-Flags zurück.
|
kcode
|
rxp.kcode -> einString |
|
Gibt den Zeichensatzcode des regulären Ausdrucks zurück.
|
match
|
rxp.match(einString)
-> einErgebnis oder nil |
|
Gibt ein MatchData -Objekt zurück, das die Ergebnismenge beschreibt
bzw. nil wenn kein Treffer gefunden wurde. Dies ist equivalent mit der Abfrage der
speziellen Variable $~ nach einem normalen Vergleich.
/(.)(.)(.)/.match("abc")[2] |
» |
"b" |
|
source
|
rxp.source -> einString |
|
Gibt den urspünglichen Muster-String zurück.
|