![ein Kapitel weiter](../weiter.gif)
Was sind Strings überhaupt? Nichts anderes als eine Kette von Zeichen die bei
Perl und viele anderen Sprachen auch innerhalb von doppelte bzw. einfache Anführungszeichen stehen........
$str="Ich bin ein String der skalaren Variable str\n";
$str= ' Man kann mich auch so schreiben ' ;
Strings können auch in skalare Variablen zwischengespeichert werden........
$str="Ich bin ein String der skalaren Variable str\n";
$str= ' Man kann mich auch so schreiben ' ;
Für Leute die von der Programmiersprache C kommen ist dies natürlich ein bisschen
verwirrend das man in Perl alle Datentypen in einen Topf wirft.
$str="Hallo Welt\n";
$var=100;
In C würde man dafür schreiben............
char str[]="Hallo Welt\n";
int var=100;
Soviel nur am Rande dazu. Nun gibt es aber in Perl noch weiter Möglichkeiten Strings
(wir wollen sie von nun an Zeichenketten nennen) zu definieren.
Die ein Möglichkeit ist mit q für Quoting. Wofür?
Nun eigentlich nur aus Bequemlichkeitsgründen würde ein C-Programmierer sagen. Dann anstatt.........
$str="Hallo \"Welt\"\n";
...das Welt in Anführungsstrichen mit Hilfe des Escape-Operators (Steuerungszeichen \ ) geschieht dies so........
#!/usr/bin/perl -w
$str=q%Hallo "Welt"%;
print $str,"\n";
print q%Dies funktioniert auch so%,"\n";
print qq§"Der gesamte Text in Anführungszeichen \n"§;
Die Darstellung mit dem einfachen q ist also gleich mit........
print %qHallo Welt \n%;
print 'Hallo Welt\n';
Und die zweite Definition die sie im Programm mit qq§........§; gesehen hat ist gleich wie...
print qq§"Der gesamte Text in Anführungszeichen \n"§;
print "\"Der gesamte Text in Anführungszeichen\" \n";
Also steht q für eine einfaches Anführungszeichen und qq für ein Doppeltes.
Und es gibt noch einen Möglichkeit Zeichenketten zu definieren. (Perl gilt nicht umsonst als Weltmeister der Textverarbeitung)
Man kann eine Zeichenkette auch anstatt zwischen Symbolen zwischen zwei Gleichnamige Bezeichner einschließen. Dies sieht so aus......
<<HERE_DUMDIDU; #Beginn der Zeichenkette
Die ist die Möglichkeit mittels <<HERE_bezeichner einen
Text auf dem Bildschirm auszugeben.
HERE_DUMDIDU #Ende der Zeichenkette
Eingeleitet wird der Text mit << gefolgt von einem HERE ohne Zwischenraum......
<<HERE_... #richtig
<< HERE_ #falsch
und Abgeschlossen wird der Text mit HERE und dem Bezeichener in einer
neuen Zeile am Anfang.........
#!/usr/bin/perl -w
$text=<<HERE_HOWDI;
Eine weitere Möglichkeit des Weltmeisters der Textverarbeitung
Texte ausgeben zu lassen bzw. einer skalaren Variablen zuzuweisen.
Der Text wird auch formatiert ausgegeben.
HERE_HOWDI
print $text, "\n";
Es ist übrigens egal ob sie schreiben.........
$text=<<here_bezeichner.........
$text=<<HerEbezeichner..........
$text=<<herEBEZEICHNER..........
Aus Übersichtlichkeitsgründen bietet sich aber in diesem Fall Großschreibung
an.
![ein Kapitel weiter](../weiter.gif)
© 2001,2002 Jürgen Wolf
|