Was bedeutet "?" und ":" nach regulärem Ausdruck?
Miriam
- perl
Hallo,
kann mir vielleicht jemand weiterhelfen was in folgender Perl-Zeile:
$test2 =~ /ABc/ ? q(//subdir) : $test1;
das Fragezeichen(?) und der Doppelpunkt(:) bedeuten ??? Bin langsam am Verzweifeln, weil ich dazu einfach nichts finde :-(
Danke schonmal!
Miri
Hi,
kann mir vielleicht jemand weiterhelfen was das Fragezeichen(?) und der Doppelpunkt(:) bedeuten ??? Bin langsam am Verzweifeln, weil ich dazu einfach nichts finde :-(
perldoc perlop
cu,
Andreas
perldoc perlop
Danke für den Tipp, ich hab auch was dazu gefunden, aber so ganz hab ich's immer noch nicht kapiert:
@a = @b ? @b : @c;
Heißt das jetzt, dass dem @a das @b zugewiesen wird und falls @b nicht definiert ist, wird @c genommen, oder wie????
In meinem Fall müsste das Beispiel ja so aussehen:
@a = @b ? @c : @d;
Und jetzt?? Bin immer noch so ratlos wie vorher... Hoffe es findet sich noch jemand, der mir das genauer erklären kann.
Gruß, Miri
Und jetzt?? Bin immer noch so ratlos wie vorher... Hoffe es findet sich noch jemand, der mir das genauer erklären kann.
Ok, mein Fehler!
Ich hab die perldoc nicht weit genug gelesen, sondern beim ersten Auftreten von ? und : aufgehört...
Beim Weiterlesen bin ich jetzt auch zu dem If-then-else Teil gekommen.
Also danke euch beiden für die Hilfe!
Miri
hallo,
Und jetzt?? Bin immer noch so ratlos wie vorher... Hoffe es findet sich noch jemand, der mir das genauer erklären kann.
das "?" (Frage) heisst er soll nach einem ausdruck suchen,dass nach dem fragezeichen geschrieben ist,wenn er es nicht findet dann soll er das nach dem ":" nehmen...klar?
Grüsse vom Alain
hallo, sorry hab da was falsch geschrieben, also nochmal, er soll das suchen was vor dem "?" steht und falls das zutrifft soll er das ausführen was nach dem "?" kommt ansonsten das nach dem ":" ausführen,so ists richtig. Ist also abegürzt dasselbe wie if und else abfrage. Grüsse vom Alain
Hi,
also ich kann zwar kein Perl, aber in PHP (in Javascript auch?) ist so was hier:
(bedingung) ? anweisung : zweiteanweisung;
einfach eine verkürzte Schreibweise von dem hier:
if(bedingung) {
anweisung;
}
else {
zweiteanweisung;
}
vielleicht ist das ja auch in Perl so?
probier doch mal in etwa (des is jetzt halt PHP syntax, sollte aber verständlich sein...):
var a = 1;
print (a == "1") ? "a ist 1" : "a ist nicht 1!";
wenn Du da ein bisschen experimentiertst...
Gruss,
Guido
$test2 =~ /ABc/ ? q(//subdir) : $test1;
das Fragezeichen(?) und der Doppelpunkt(:) bedeuten ??? Bin langsam am Verzweifeln, weil ich dazu einfach nichts finde :-(
Danke schonmal!
Miri
Hi,
(bedingung) ? anweisung : zweiteanweisung;
if(bedingung) {
anweisung;
}
else {
zweiteanweisung;
}vielleicht ist das ja auch in Perl so?
ich denke das könnte hinkommen, vielen Dank!!!
Miri