perl -e
2007-07-6 | 2:06 am | Kein Kommentar »
Perleinzeiler
perl -p -i.bak -e ´s/a/b/g´ datei
perl DBI [mysql]
2001-01-4 | 3:02 pm | Kein Kommentar »
mysql connect/disconnect
use DBI;
$dbh = DBI->connect(„DBI:mysql:database=$database:$host“,$username,$password)
or die „Fehler beim db connect: $!“;
$dbh->disconnect();
do
$mysql_query = „DELETE FROM adressen WHERE ID=202“;
$rv = $dbh->do($mysql_query);
Rückgabewert $rv Anzahl der veränderten Zeilen
prepare-execute
$mysql_query = „SELECT count(*) FROM uniques WHERE name=?“;
$sth = $dbh->prepare($mysql_query);
$rv = $sth->execute(„Bohne“);
Rückgabewert $rv wahr bei Erfolg: if ($rv) {// erfolgreich}
Zeilenweises Auslesen mit fetchrow_array
while (@row = $sth->fetchrow_array) {
print „name: $row[0] \n“;
print „owner: $row[1] \n“;
}
Zeilenweises Auslesen als Hash mit fetchrow_hashref
while ($hash = $sth->fetchrow_hashref) {
$myName = $hash->{„name“};
$myOwner = $hash->{„owner“};
}
verknuepfung von zeichenketten
2001-01-3 | 1:26 pm | Kein Kommentar »
print „Hallole\n“;
$x = „lo“;
print „Hal$xle\n“;
print „Hal${x}le\n“;
print „Hal“.$x.“le\n“;
$text = „bla text bla“;
$text .= „weiter mehr text“;
$text .= „noch eine dritte zeile“;
$text = „bla text bla“
.“weiter mehr text“
.“noch eine dritte zeile“;
RegEx: eMail-Adressen
2001-01-3 | 1:01 pm | Kein Kommentar »
a@b.shopping
a.b@c.shopping
a.b-c@d.shopping
a-b@shopping-shopping.shopping
RegEx zum Überprüfen der Gültigkeit von eMail-Adressen
/^[a-z0-9_.\-]+@
([a-z0-9_.\-]+\.)+
[a-z]{2,9}/i
/^[a-z0-9]+([_.\-][a-z0-9]+)*@ ([a-z0-9_.\-]+\.)+ [a-z]{2,9}/i |
regulaere Ausdruecke
2001-01-2 | 2:54 pm | Kein Kommentar »
if ($irgendwas =~/…/){…}
+ = {1,} ? = {0,1} * = {0,} |
mindestens eins hoechtens eins bel. viele, auch keins |
---|---|
^ $ |
Suche am Anfang des Audrucks Suche am Ende des Audrucks |
if ($irgendwas =~/ris/) if ($irgendwas =~/ine$/) if ($irgendwas =~/^ris/) |
Auswertung des Ausdrucks ergibt: true, d.h. wird gefunden true, d.h. wird gefunden false, d.h. wird nicht gefunden |
. /.*/ |
irgendein beliebiges Zeichen beliebig oft ein bel. Zeichen (auch null-mal) |
/^.*$/ /^$/ /^\s*$/ |
irgendetwas, auch Leerzeile Leerzeile Leerzeile |
\d = [0-9] \d\d = \d{2} \d{0,2} |
eine Ziffer zwei Ziffern hintereinander hoechstens zwei, aber auch keine Ziffer |
\s \S |
whitespaces nicht-whitespaces |
[aeiou]+ [^aeiou]+ |
Vokale Nicht-Vokale |
[a-kw-z] [0-9] |
Bereiche |
[„_,:] [\.\-\\] |
ohne Sonderbedeutung Escape bei Zeichen mit Sonderbedeutung |
$irgendwas = „ if ($irgendwas =~/< .*?>/) # findet <bla> if ($irgendwas =~/< [^>]+>/) # findet ebenfalls <bla> |
arrays und hashes [perl]
2001-01-1 | 1:14 pm | Kein Kommentar »
Array @liste
$liste[-1] | das letzte Element der Liste |
---|---|
$#liste | maximaler Index / Anzahl der Felder -1 |
$anzahl = @liste | Anzahl der Felder |
push, unshift, shift, pop
push(@liste, „xyz“) | „xyz“ wird hinten angehaengt |
---|---|
unshift(@liste,“abc“) | „abc“ wird vorne eingefuegt |
$x = shift(@liste) | vorderstes Element („abc“) wird entfernt und in die Variable $x geschrieben |
$x = pop(@liste) | hinterstes Element („xyz“) wird entfernt und in die Variable $x geschrieben |
@osterei
$ei->{„name“} = „giftgrünes Osterei“;
$ei->{„img“} = „http://www.remote-island.org/142291/ggO.gif“;
push(@osterei,$ei);
while (scalar(@osterei)) {
$ei = shift(@osterei);
… }