OpenSCAD User Manual/String Functions

str Edit

Convert all arguments to strings and concatenate.

Usage examples:

echo ("This is ",number,3," and that's it.");
echo (str("This is ",number,3," and that's it."));


ECHO: "This is ", 2, 3, " and that's it."
ECHO: "This is 23 and that's it."

This can be used for simple conversion of numbers to strings

s = str(n); 

chr Edit

[Note: Requires version 2015.03]

Convert numbers to a string containing character with the corresponding code. OpenSCAD uses Unicode, so the number is interpreted as Unicode code point. Numbers outside the valid code point range produce an empty string.


Convert one code point to a string of length 1 (number of bytes depending on UTF-8 encoding) if the code point is valid.
Convert all code points given in the argument vector to a string.
Convert all code points produced by the range argument to a string.


echo(chr(65), chr(97));      // ECHO: "A", "a"
echo(chr(65, 97));           // ECHO: "Aa"
echo(chr([66, 98]));         // ECHO: "Bb"
echo(chr([97 : 2 : 102]));   // ECHO: "ace"
echo(chr(-3));               // ECHO: ""
echo(chr(9786), chr(9788));  // ECHO: "☺", "☼"
echo(len(chr(9788)));        // ECHO: 1

Note: When used with echo() the output to the console for character codes greater than 127 is platform dependent.

ord Edit

[Note: Requires version 2019.05]

Convert a character to a number representing the Unicode code point. If the parameter is not a string, the ord() returns undef.


Convert the first character of the given string to a Unicode code point.


// ECHO: 97

// ECHO: 66

echo([for (c = "Hello! 🙂") ord(c)]);
// ECHO: [72, 101, 108, 108, 111, 33, 32, 128578]

// ECHO: 1,"1" // only converts 1 character

len Edit

returns the number of characters in a text.

echo(len("Hello world"));    // 11

Also See search() Edit

search() for text searching.

is_string(value) Edit

The function is_string(value) return true if the value is a string, false else

echo(is_string("alpha")); //true
echo(is_string(22)); //false