Ich weiß, dass ich eine Ruby-case-Anweisung schreiben kann, um eine Übereinstimmung mit regulären Ausdrücken zu überprüfen. Ich möchte jedoch die Übereinstimmungsdaten in meiner return-Anweisung verwenden. So etwas wie dieser Halbpseudocode:
foo = "10/10/2011"
case foo
when /^([0-9][0-9])/
print "the month is #{match[1]}"
else
print "something else"
end
Wie kann ich das erreichen?
Vielen Dank!
Nur eine Anmerkung: Ich verstehe, dass ich für einen einfachen Fall wie oben niemals eine switch-Anweisung verwenden würde, aber das ist nur ein Beispiel. In Wirklichkeit versuche ich, viele potenzielle reguläre Ausdrücke für ein Datum abzugleichen, das auf verschiedene Arten geschrieben werden kann, und es dann entsprechend mit Rubys Datumsklasse zu analysieren.