This is documentation for Mathematica 4, which was
based on an earlier version of the Wolfram Language.
View current documentation (Version 11.2)

 Documentation /  Mathematica /  Das Mathematica Buch /  Die Prinzipien von Mathematica /  Zeichenketten und Zeichen /

SonderzeichenFortgeschrittenes Thema: Zeichencodes

2.7.6 Fortgeschrittenes Thema: Zeilenvorschübe und Tabulatoren in Zeichenketten

Explizite Darstellungen von Zeilenvorschüben und Tabulatoren in Zeichenketten

Dies druckt auf zwei Zeilen.

In[1]:= "Erste Zeile.\nZweite Zeile."

Out[1]=

In InputForm wird der Zeilenvorschub durch ein explizites \n dargestellt.

In[2]:= InputForm[%]

Out[2]//InputForm= "Erste Zeile.\nZweite Zeile."

Wenn Sie eine lange Zeichenkette in Mathematica eingeben, ist es häufig angebracht, die Eingabe über mehrere Zeilen umzubrechen. Mathematica wird in der Voreinstellung derartige Zeilenumbrüche ignorieren; wenn Sie also daraufhin die Zeichenkette ausgeben, kann es dann völlig anders umgebrochen werden.

Mathematica ignoriert den Zeilenumbruch und alle danach folgenden Tabulatoren.

In[3]:= "Eine Zeichenkette
auf zwei Zeilen."

Out[3]=

Es gibt keinen Zeilenvorschub in der Zeichenkette.

In[4]:= InputForm[%]

Out[4]//InputForm= "Eine Zeichenkette auf zwei Zeilen."

Eingabeformen für Zeichenketten

Nun läßt Mathematica den Zeilenvorschub bestehen.

In[5]:= "\<Eine Zeichenkette auf
zwei Zeilen.\>"

Out[5]=

In InputForm wird der Zeilenvorschub als explizites \n gezeigt.

In[6]:= InputForm[%]

Out[6]//InputForm= "Eine Zeichenkette auf\nzwei Zeilen."

Sie sollten folgendes wissen: Auch wenn es möglich ist, durch Eingabe von Zeichenketten mit Tab-Zeichen und Zeilenvorschüben Mathematica-Ausgabe auf gewisse Weise zu formatieren, so ist dies kaum jemals eine gute Idee. In der Regel gelingt dies sehr viel besser mit den höheren Mathematica-Formatierungsprimitiven, die in den nächsten zwei Abschnitten diskutiert werden. Diese Primitiven werden immer konsistente Ausgabe ergeben, unabhängig zum Beispiel davon, wie die Positionen der Tab-Einstellungen auf einem speziellen Gerät sind.

Text wird in Zeichenketten mit Zeilenvorschüben immer linksbündig ausgerichtet.

In[7]:= {"Hier ist\neine Zeichenkette\nauf mehreren Zeilen.",
"Hier ist\neine andere"}

Out[7]=

Die ColumnForm-Formatierungsprimitive bietet mehr Kontrolle. In diesem Fall wird Text rechtsbündig ausgerichtet.

In[8]:= ColumnForm[{"Erste Zeile", "Zweite", "Dritte"}, Right]

Out[8]=

Und hier wird der Text zentriert.

In[9]:= ColumnForm[{"Erste Zeile", "Zweite", "Dritte"}, Center]

Out[9]=

In Mathematica können mit Formatierungsprimitiven bloße Tabulator- und Zeilenvorschub-Zeichen vermieden werden. Wenn Sie jedoch Ihre Ausgabe in textueller Form an externe Programme übergeben wollen, werden diese Programme häufig erwarten, daß ihnen Tabulator- und Zeilenvorschub-Zeichen übergeben werden.

Bedenken Sie, daß Sie entweder WriteString einsetzen müssen oder Ihre Ausgabe in OutputForm angeben müssen, damit Tabulator- und Zeilenvorschub-Zeichen sichtbar werden. In InputForm werden sie als \t und \n sichtbar.

Dies gibt eine Zeichenkette in eine Datei aus.

In[10]:= "Erste Zeile.\nZweite Zeile." >> test

Hier ist der Inhalt der Datei. In der Voreinstellung erzeugt >> Ausgabe in InputForm.

In[11]:= !!test

"Erste Zeile.\nZweite Zeile."

Dies weist Mathematica explizit an, für die Ausgabe OutputForm zu verwenden.

In[12]:= OutputForm["Erste Zeile.\nZweite Zeile."] >> test

Nun gibt es in der Datei ein Zeilenvorschub-Zeichen.

In[13]:= !!test

Erste Zeile.

Zweite Zeile.

SonderzeichenFortgeschrittenes Thema: Zeichencodes