Expression functions reference
An expression processor in Imply Lumi transforms string and numeric values as incoming events flow through a pipeline. Use this reference to find the functions you need to build your expressions.
CEIL
CEIL(n)
For a numeric literal n, rounds up to the nearest integer.
Example
Rounds up the number of hours.
- Expression
CEIL(hours)
- Event input
{"hours": 5.8}
- Expression output
hours: 6
COALESCE
COALESCE(a, b, ...)
For two or more inputs, returns the first non-null, non-empty value.
Example
Determine when an order was last updated.
- Expression
COALESCE(return_date, order_date, '1900-01-01')
- Event input
{"order_date": "2026-01-28T06:19:54Z"}
- Expression output
last_update: 2026-01-28T06:19:54Z
CONCAT
CONCAT(a, b, ...)
For two or more inputs, joins into a single result.
Example
Combine first and last names.
- Expression
CONCAT(firstName, '_', lastName)
- Event input
{"firstName": "Wilma", "lastName": "Rudolph"}
- Expression output
fullName: Wilma_Rudolph
FLOOR
FLOOR(n)
For a numeric literal n, rounds down to the nearest integer.
Example
Rounds down a store's rating.
- Expression
FLOOR(rating)
- Event input
{"rating": 4.2}
- Expression output
rating_bucket: 4
LENGTH
LENGTH(s)
For string literal s, returns the number of characters.
Example
Get the length of a zip code.
- Expression
LENGTH(zip)
- Event input
{"zip": 92617}
- Expression output
len_zip: 5
LOWER
LOWER(s)
For string literal s, converts to lowercase.
Example
Normalize email address to lower case.
- Expression
LOWER(email)
- Event input
{"email": "User@Example.com"}
- Expression output
email: user@example.com
LTRIM
LTRIM(s)
For string literal s, removes leading whitespace.
Example
Strip leading spaces from fixed-width form field.
- Expression
LTRIM(employee_id)
- Event input
{"employee_id": " E4821"}
- Expression output
employee_id: E4821
REPLACE
REPLACE(s, pattern, replacement)
For string literal s, finds regex pattern and replaces it with replacement.
Example
Format a date from YYYY-MM-DD to MM/DD/YYYY.
- Expression
REPLACE(raw_date, "(\d{4})-(\d{2})-(\d{2})", "$2/$3/$1")
- Event input
{"raw_date": "2026-03-13"}
- Expression output
formatted_date: 03/13/2026
ROUND
ROUND(n, [precision])
For numeric literal n, rounds to the nearest integer or, if specified, to precision decimal places.
Numbers halfway between two integers round up; for example, 4.5 rounds to 5.
Example
Rounds a price to two decimal places.
- Expression
ROUND(price, 2)
- Event input
{"price": 934.49032}
- Expression output
price: 934.49
RTRIM
RTRIM(s)
For string literal s, removes trailing whitespace.
Example
Strip trailing spaces from product code.
- Expression
RTRIM(sku)
- Event input
{"sku": "SKU001 "}
- Expression output
sku: SKU001
SUBSTRING
SUBSTRING(s, start, length)
For string literal s, extracts a substring starting at zero-based index start for length characters.
Example
Extract the date part of a filename.
- Expression
SUBSTRING(filename, 4,6)
- Event input
{"filename": "app_260313_error.log"}
- Expression output
file_date: 260313
TRIM
TRIM(s)
For string literal s, removes leading and trailing whitespace.
Example
Strip leading and trailing spaces from an extracted field.
- Expression
TRIM(city)
- Event input
{"city": " New Orleans "}
- Expression output
city: New Orleans
UPPER
UPPER(s)
For string literal s, converts to uppercase.
Example
Normalize state abbreviation to upper case.
- Expression
UPPER(state)
- Event input
{"state": "Ca"}
- Expression output
state: CA
Learn more
For more information, see the following topics:
Manage pipelines and processors for details on creating a pipeline. Processors reference for details on processors.