Text in Klammern aus String extrahieren

24/10/2008 - 13:50 von Heinz Enger | Report spam
Hallo!

Bei meinem Projekt bekomme ich immer Strings
der Form "text (in klammern)". Die Klammern kommen
immer nur einmal in einem String vor.

Das Problem war, an den Text innerhalb der Klammern
zu kommen. Gelöst habe ich das so:

"text (in klammern)".gsub(/^.*\(/,"").gsub(/\).*$/,"")

Gibt es in Ruby dafür eine elegantere Methode?
 

Lesen sie die antworten

#1 Sebastian Hungerecker
24/10/2008 - 17:27 | Warnen spam
Heinz Enger wrote:
Gibt es in Ruby dafür eine elegantere Methode?



Such dir was aus:

"text (in klammern)"[/\(([^)]+)\)/, 1]




=> "in klammern"

"text (in klammern)" =~ /\(([^)]+)\)/




=> 5
$1




=> "in klammern"

"text (in klammern)".match(/\(([^)]+)\)/)[1]




=> "in klammern"

Oder falls du doch mal mehr Klammern hast:

"text (in klammern) (auch in Klammern)".scan(/\(([^)]+)\)/)




=> [["in klammern"], ["auch in Klammern"]]


HTH,
Sebastian
Jabber:
ICQ: 205544826

Ähnliche fragen