String


 * This article is about the Lua type. For the API, see String API.

String is a type that represents an immutable sequence of characters.

Literal value
Strings can be used in a program's source code by using a string literal, which is typically indicated by enclosing the desired sequence of characters within a pair of single or double quotes: -- myString and myOtherString are variables that hold a string value local myString = "Hello world!" local myOtherString = 'Hola mundo!'

Character escaping
), the delimiter used to open/close the literal ( or  ), or to specify specific characters by their numeric code (e.g.   for space), such characters must be prepended with a backslash, and to use a backslash literally, escape it with another backslash:



Multiline literals
The above method of expressing a string literal is for single-line usage only, for a multi-line string literal, begin the sequence with and terminate it with.

One thing to note is that when using the multiline literal, Lua will ignore the first newline if nothing follows the initial, but not the trailing :

Additionally, inside of a multiline string, there is no concept of escapes, so using characters like  and   will represent themselves instead of acting specially:

Therefore, to include the  symbol, place   symbols between the brackets, like so:

There is no limit to the amount of 's one can place between the brackets, thereby allowing for deeply nested multline string literals, if desired.