Codectionary / Developer documentation / Luau

Luau literal string splitting

string.split separates text using a literal separator and preserves empty fields. It is a Luau addition, not standard Lua's pattern-based gmatch.

Syntax

local fields = string.split(text, separator)

Examples

Luau literal string splitting

Run as a standalone current Luau script, or as a Script in Roblox Studio ServerScriptService. No Roblox engine APIs are required; type-annotated syntax is not standard Lua.

local fields = string.split("red,,blue", ",")
print(#fields)
print(fields[1])
print(fields[2] == "")
print(fields[3])
  1. Output: 3, red, true, blue. Adjacent separators represent an empty middle field.

Best practices

  • Use a real CSV parser for quoted delimiters and line breaks. Literal splitting does not interpret escape or quoting rules.

Runtime & versions

Luau host; Roblox engine examples require Roblox Studio. Feature availability depends on the language and runtime version used by your project; consult the official reference below.

Luau documentation

Specifications & further reading