Create String

Description

This container builds an output string from a format string and a set of values or strings identified by Number Value and Number String functors placed inside it, substituting each one into the format string at the position of its tag. It accepts hook functors the same way the calculator functors do, but unlike Calculate Value and the other calculator functors, it does not take a bracketed algebraic expression: Format is a plain string containing literal text plus numbered, type-prefixed tags.

Inputs

Name Type Description
Format String Type Format string used to generate the output string, built from literal text plus tags that reference the hook functors placed inside this container: <vN> for the Number Value whose Value Number is N, <sN> for the Number String whose Value Number is N. A numeric tag can also add padding, or padding and precision together, as <vN,padding> or <vN,padding,precision>. See Notes for worked examples.

Optional Inputs

None.

Outputs

Name Type Description
Result String Type String generated by substituting the identified values and strings into the format string.

Group

Notes

Every placeholder used in the format string must have a matching Number Value or Number String instance inside this container with the same number; otherwise the model raises an error. Conversely, an instance of Number Value or Number String placed inside this container but not referenced by any placeholder in the format string reports a warning.

Two instances of Number Value or Number String placed inside this container cannot share the same Value Number; doing so raises an error.

To include a literal “<” in the format string without starting a placeholder, escape it as “\<”.

Examples: cities_<v1> with a Number Value of 87 produces “cities_87”. capitals_<v1,0,3> with a value of 1.2 (padding 0, precision 3) produces “capitals_1.200”. cities_<v1,4> with a value of 1 (padding 4, no precision) produces “cities_0001”. big_<s1> with a Number String of “city” produces “big_city”. cities_\«v1» with a value of 87 produces “cities_<87>” – the backslash before “<” turns it into a literal character instead of starting a tag.

Internal Name

CreateString

Usage examples

  • Iterating over Lookup Table values – builds a per-row message from a table's key and value using <v1>/<v2> tags.
  • Container functors in the EGO Script documentation – uses Create String with Number Value to embed a computed result inside a message printed after a block completes.