.. highlightlang:: us .. index:: exptok .. _exptok: exptok ====== .. us.tag exptok NOTREADYGERMAN ProgMisc Changed5511 :ref:`exptok` zerlegt einen einfachen arithmetischen Ausdruck in Token. .. function:: ssToks = exptok(ssExpression) .. us.return **Returnwert** *ssToks* ist ein String mit Token oder im Fehlerfall eine Zahl. Falls ein Fehler auftrat, enthält die Zahl die Zeichenposition des Fehlers in *ssExpression*. Die Token sind durch das Zeichen ``\2`` getrennt. Ein Token besteht aus einem Kennzeichen und dem Tokenstring. Das Kennzeichen und der Tokenstring sind durch das Zeichen ``\1`` getrennt. Kennzeichen sind die folgenden: .. list-table:: :header-rows: 1 * - Kennzeichen - Bedeutung * - F$n - Wert ist ein Funktionsaufruf. n steht für die Anzahl an Parametern. * - V - Variablenname. * - O - Operator +-\*/^ * - S - Zeichenkette (String). * - N - Zahl der Form 1, 1.2, 1.2e3, -1.2e-3. * - C - Klammer ``(`` oder ``)`` oder Komma ``,``. .. us.params **Parameter** .. uparam:: ssExpression *ssExpression* ist ein arithmetischer Ausdruck. Der Ausdruck darf folgende Elemente enthalten: Operatoren: ``+,-,*,/,^`` Klammern: ``(`` und ``)`` Funktionsnamen, Variablennamen, Zeichenkonstanten in ``"``-Zeichen, also Strings und Zahlen der Form 1, 1.2, 1.2e3, -1.2e-3 Funktionen können eine leere Parameterliste haben, wie bei ``print()`` oder eine durch ``,``-Zeichen getrennte Parameterliste. .. us.example **Beispiel** .. highlight:: none :: toks = exptok("3 * sin(2.3) + abc / 1"); * toks N3O*F$1sinC(N2.3C)O+VabcO/N1 * toks = strtok(toks, "\1\2"); * toks' N 3 O * F$1 sin C ( N 2.3 C ) O + V abc O / N 1 .. highlight:: us .. seealso:: :ref:`uberblick-programmierung` :sub:`id-285600`