util.string.isvalid

Shared

Checks whether a string is well-formed UTF-8


Syntax

local valid = util.string.isvalid(
    input
)

Parameters

TypeNameDescription
stringinputString to validate

Returns

TypeNameDescription
boolvalidtrue if input is well-formed UTF-8

Examples

Check a valid UTF-8 string
local valid = util.string.isvalid("hello")

core.engine.print("info", valid) -- true
Check a string with multi-byte characters
local valid = util.string.isvalid("héllo 中文")

core.engine.print("info", valid) -- true
Check a string containing a malformed byte sequence
local valid = util.string.isvalid("hello\xFF")

core.engine.print("info", valid) -- false
Validate input before passing it to other utf8 functions
local user_input = "\xC0\x80"

if not util.string.isvalid(user_input) then
    core.engine.print("info", "Rejecting malformed input")
end

On this page