Thema Perl Freitag, 16.2.2007, 12:34:21 Uhr
Reguläre Ausdrücke - Klammerung und gespeicherte Werte
Wie Sie vorher gesehen haben, können Wiederholungen von Zeichen ermittelt werden, indem man die Zeichen in Klammern setzt.Diese Klammerung hat aber auch noch einen anderen Effekt: Die gefundenen Zeichen werden bestimmten Variablen zugewiesen! Diese Zuweisung ist eine sehr hilfreiche Einrichtung von Perl, wie Sie gleich sehen werden:
$t='<a href="test.htm">Test</a>'; $t=~ /(<a.*?>)(.*?)(<\/a>)/; print "Linkcode: $1\nLinktext: $2\nEndocde: $3";
|
Weiterlesen...
Freitag, 16.2.2007, 10:09:57 Uhr
Kuriose Reguläre Ausdrücke Hier will ich in loser Reihenfolge die seltsamsten von gefundenen Regulären Ausdrücke vorstellen.
Split mit RegEx
$t="wert1 wert2"; ($a,$b)=$t=~ /(.*) (.*)/; print "a: $a, b: $b";
|
Weiterlesen...
Donnerstag, 15.2.2007, 21:47:15 Uhr
Gegen die Gier - Kürzeste Möglichkeit finden mit regulären Ausdrücken Perl ist ja, wie Sie bekanntermaßen jetzt wissen, gierig. Es werden also immer die längsten möglichen Ergebnisse verwendet. Dies hat ja oftmals Vorteile, was aber, wenn man die kürzeste Variante braucht? Natürlich geht das auch, wäre auch blöd wenn nicht...
Um die kürzeste Variante einer Entsprechung eines regulären Ausdruckes zu finden, wird das ?-Zeichen verwendet. Am Besten, ich bringe gleich ein Beispiel:
$t='<a href="test.htm">bla</a>'; $t=~ /<.*?>/; print "$&\n";
|
Weiterlesen...
Donnerstag, 15.2.2007, 17:43:57 Uhr
Wiederholungen finden mit regulären Ausdrücken Eine besondere Flexibilität erhalten Reguläre Ausdrücke durch die Möglichkeit, nach mehrfachem Auftreten von Zeichen zu suchen. Erreicht wird dies durch die Angabe der Anzahl in geschweiften Klammern { und }. Die Angabe {2,5} bedeutet, daß das Zeichen 2-5 mal enthalten sein muß.
Beispiel Weiterlesen...
Donnerstag, 15.2.2007, 10:34:17 Uhr
substr() in Perl Der Befehl substr, der eine Abkürzung des englischen Wortes Substring ist, liefert Teile eine Strings, oder Skalars, wie es in Perl heißt, zurück. Der Syntax ist $teil=substr($original,startpos,anzahlzeichen,ersetzungszeichen);
Weiterlesen...
Freitag, 9.2.2007, 20:04:33 Uhr
Global, lokal oder wie - my () in Perl Ohne lange Vorrede gleich ein Beispiel:
for ($i=0;$i<10;$i++){ print "$i "; &changei; }
sub changei{ $i=20; }
|
Ausgabe: 0 Weiterlesen...
Freitag, 9.2.2007, 09:51:25 Uhr
print in Perl Hier ist er also, der gute alte print-Befehl, den man aus vielen anderen Programmiersprachen kennt. Und natürlich ist er auch in Perl dafür zuständig, etwas auszugeben.
Was und wohin etwas ausgeegeben wird, ist aber abhängig davon, wie print verwendet wird.
Weiterlesen...
Dienstag, 6.2.2007, 20:44:15 Uhr
Den absoluten Pfad eines Scriptes auf dem Server feststellen Zwischendurch mal wieder etwas fortgeschritteneres, ein Problem das sich mir heute stellte: Wie stelle ich den absoluten Pfad eines Scriptes auf dem Server fest?
Nachdem ich mal bei Gurgel nachgesehen habe und nichts brauchbares gefunden habe, hab ich mir mal all die Perl-Befehle durchgeduckt, die damit zu tun haben könnten. Aber auch da war nichts zu finden. Fündig wurde ich schließlich bei den Umgebungsvariablen. Weiterlesen...
Dienstag, 6.2.2007, 17:01:47 Uhr
Reguläre Ausdrücke - Einfache Suche mit gemischten Zeichen Wie die einfache Suche funktioniert haben wir ja nun gesehen. Auch die Funktion von Zeichenklassen sollte klar sein.
Hier noch ein Beispiel für die einfache Suche mit Zeichen und Zeichenklassen zusammen:
$t="Perl-Version 5.002"; if ($t=~ /\d\.\d/){print "wahr";}
|
Weiterlesen...
Montag, 5.2.2007, 13:19:02 Uhr
Keys eines Hashes feststellen in Perl Wie kann man am schnellsten alles Key's (Schlüssel) eines Hashes feststellen?
Ganz einfach, dafür gibts den keys()-Befehl.
Beispiel Weiterlesen...
|