Vorige: Einführung in Zeichenketten, Nach oben: Zeichenketten [Inhalt][Index]
Verkettet die Argumente arg_1, arg_2, … zu einer Zeichenkette oder einem Symbol. Die Argumente müssen sich zu einem Atom auswerten lassen. Der Rückgabewert ist ein Symbol, wenn das erste Argument ein Symbol ist. Ansonsten wird eine Zeichenkette zurückgegeben.
concat
wertet die Argumente aus. Der Quote-Operator '
verhindert die Auswertung. Siehe auch die Funktion sconcat
.
Beispiele:
(%i1) y: 7$ (%i2) z: 88$ (%i3) stringdisp:true$ (%i4) concat(y, z/2); (%o4) "744" (%i5) concat('y, z/2); (%o5) y44
Einem Symbol, das mit concat
konstruiert wird, kann ein Wert zugewiesen
werden und es kann in Ausdrücken auftreten.
(%i6) a: concat ('y, z/2); (%o6) y44
(%i7) a:: 123; (%o7) 123
(%i8) y44; (%o8) 123 (%i9) b^a; y44 (%o9) b (%i10) %, numer; 123 (%o11) b
concat(1, 2)
gibt eine Zeichenkette als Ergebnis zurück.
(%i12) concat (1, 2) + 3; (%o12) "12" + 3
Verkettet die Argumente arg_1, arg_2, … zu einer Zeichenkette.
Im Unterschied zu der Funktion concat
müssen die Argumente nicht
Atome sein. Der Rückgabewert ist eine Zeichenkette.
Beispiel:
(%i1) sconcat ("xx[", 3, "]:", expand ((x+y)^3)); (%o1) xx[3]:y^3+3*x*y^2+3*x^2*y+x^3
Konvertiert das Argument expr
in eine lineare Darstellung, wie sie auch
vom Parser von der Eingabe eingelesen wird. Die Rückgabe von string
ist eine Zeichenkette. Diese kann nicht als Eingabe für eine Berechnung
genutzt werden.
Beispiele:
Die hier verwendete Funktion stringp
ist im Paket stringproc
definiert und wird automatisch geladen.
(%i1) stringdisp:true; (%o1) true (%i2) string(expand((a+b)^2)); (%o2) "b^2+2*a*b+a^2" (%i3) stringp(%); (%o3) true
Standardwert: false
Hat stringdisp
den Wert true
, werden Zeichenketten mit
Anführungszeichen ausgegeben. Ansonsten werden keine Anführungszeichen
ausgegeben.
Wird die Definition einer Funktion ausgegeben, werden enthaltene Zeichenketten
unabhängig vom Wert der Optionsvariablen stringdisp
immer mit
Anführungszeichen ausgegeben.
Beispiele:
(%i1) stringdisp: false$ (%i2) "This is an example string."; (%o2) This is an example string. (%i3) foo () := print ("This is a string in a function definition."); (%o3) foo() := print("This is a string in a function definition.") (%i4) stringdisp: true$ (%i5) "This is an example string."; (%o5) "This is an example string."
Vorige: Einführung in Zeichenketten, Nach oben: Zeichenketten [Inhalt][Index]