Parses the input from hex encoded bytes, decoding the resulting bytes as a string using the selected character set. If the input fields has a prefix (other than 0x and 16#) then use regex() or replace() to remove the prefix before using parseHexString. Any non-hex characters in the input are ignored — the decoding attempts to decode all chars in the field that match 0-9 or A-F. Case is ignored.

ParameterTypeRequiredDefaultDescription
asstringfalse_parsehexstringName of output field.
charsetstringfalseUTF-8The charset to use when transforming bytes to string. Valid charsets are: (ISO-8859-1, UTF-8).
fieldstringtrue Specifies the field containing the hex string to use as input. [a]

[a] If an argument name is not given, field is the default argument.

Parses the string 48656c6c6f576f726c64 from the field named foo into the field text, getting the value Helloworld

logscale
parseHexString(foo, as=text, charset="ISO-8859-1")

Parses the string 0x4 865 6c6c6f576f726c6420 plus F 0 9 F 9 8 8 0 from the field named hex into the field text, using UTF-8 and getting the value Helloworld 😀 where the smiley is the result of decoding the trailing digits.

logscale
hex := "0x4 865 6c6c6f576f726c6420 plus F 0 9 F 9 8 8 0"
| text := parseHexString(hex)