util.string.parse

Shared

Converts a string to its appropriate primitive type


Syntax

local result = util.string.parse(
    input
)

Parameters

TypeNameDescription
anyinputInput to parse and convert to its appropriate type

Returns

TypeNameDescription
anyresultConverted value:
nil - if input is "nil"
bool - if input is "true" or "false"
number - if input represents a valid number
default - if input cannot be converted to other types

Examples

Parse a nil string
local result = util.string.parse("nil")

core.engine.print("info", result) -- nil
Parse a boolean true string
local result = util.string.parse("true")

core.engine.print("info", result) -- true
Parse a boolean false string
local result = util.string.parse("false")

core.engine.print("info", result) -- false
Parse an integer string
local result = util.string.parse("42")

core.engine.print("info", result) -- 42
Parse a float string
local result = util.string.parse("3.14")

core.engine.print("info", result) -- 3.14
Parse a negative number string
local result = util.string.parse("-10")

core.engine.print("info", result) -- -10
Return unchanged string when no conversion applies
local result = util.string.parse("hello")

core.engine.print("info", result) -- 'hello'
Return false when input is nil
local result = util.string.parse(nil)

core.engine.print("info", result) -- false

On this page