starbuck86 Geschrieben 28. August 2008 Geschrieben 28. August 2008 Hallo zusammen. Gestern bash heute perl. Abwechslung muss sein. :-) Zu meinem Problem: Ich würde gerne in Perl ein Skript schreiben, mit dem ich aus einem String etwas herausziehen kann. Der gewöhnliche String sieht so aus: dgene:dnt:sec99:ee20:1:p-dnt:beta: Nun möchte ich zum Beispiel den String nach dem 2. Doppelpunkt (also sec99) extrahieren. Wie geht man so etwas an? Kann mir da jemand etwas helfen? Danke && Gruß starbuck
Enno Geschrieben 28. August 2008 Geschrieben 28. August 2008 (bearbeitet) komplettzerlegen geht mit split zum beispiel so: @Woerter = split(/:/,$Satz); am besten mal hier: SELFHTML: Perl weiterkucken. wenn du ab einem bestimmten Vorkommen trennen willst würde ich es in dieser forma machen: $Suchwort = ":"; while($Satz =~ /$Suchwort/g) { push(@Positionen, pos($Satz)); } Damit hast du in Positionen die Stellen stehen an denen ein : vorkommt. und wie man mit substr, left oder rigth was abtrennt weist du? dann einfahc aus dem array den 2ten Wert nehmen und deinen originalString dort trennen. Bearbeitet 28. August 2008 von Enno
starbuck86 Geschrieben 28. August 2008 Autor Geschrieben 28. August 2008 (bearbeitet) Danke. Das war das was ich gesucht habe. Nachdem Aufteilen mit split kann ich ja sec99 abfragen durch. $secnr=$Woerter[2]; Gruß ******************************************************** Das habe ich jetzt nicht ganz verstanden: while($Satz =~ /$Suchwort/g) { push(@Positionen, pos($Satz)); } Das ist doch eine Endlosschleife? Was macht das "../g) {.."? Oder heisst das, wenn ich einen String suche in meinem Satz, den dann einem Array zuzuweisen? ja mit substr habe ich schon gearbeitet. Left / right sind mir noch neu. Gruß starbuck Bearbeitet 28. August 2008 von starbuck86
bigvic Geschrieben 28. August 2008 Geschrieben 28. August 2008 Hi, Das habe ich jetzt nicht ganz verstanden: Das ist doch eine Endlosschleife? Was macht das "../g) {.."? Oder heisst das, wenn ich einen String suche in meinem Satz, den dann einem Array zuzuweisen? perlfaq6 - perldoc.perl.org perlre - perldoc.perl.org pos - perldoc.perl.org push - perldoc.perl.org ciao, vic
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden