Examples: String Utils
Evaluate a string with multiple elements
We want to evaluate a ticket description with multiple STARTS_WITH, but you do not want to write multiple OR operators in your rule that could make it bulky and hard to read. We can leverage the ANY stream operator to match our ticket with a list of strings or elements.
You can also leverage the ALL operator in case you want AND conditions.
Given
To check against all prefixes
Expected Result
String Special Character Detection
Check if a string contains any characters that are not alphabetic letters or whitespace.
DSL Expression
This DSL:
- Searches for one or more consecutive non-letter, non-whitespace characters
- Returns
trueif any numbers or special characters are found - Returns
falseif the string contains only letters and whitespace
Use Cases
- Form validation to ensure text fields contain only alphabetic characters
- Identifying inputs that might require special handling or escaping
- Security checks for potentially unsafe character sequences
Examples
Make all elements in a list lowercase
We usually create whitelists for users that want to test a certain skill or sometimes remove access to a list of people. We would want to evaluate all users in lowercase since sometimes emails or other attributes may contain capital letters. A way to lowercase an element is by using the .$LOWERCASE() formatter but it’s not scalable if you have a list of hundreds of users. Here’s how you can do it better.
Given
To lowercase all elements
Expected Result
Generate a hyphenated “Random” Number
This expression creates a pseudo-random number string formatted as a hyphen-separated sequence.
This DSL:
- Uses the current timestamp (
$TIME().$INTEGER()) as a seed value - Multiplies by different prime-like numbers (6, 12, 7, 23) to create variation
- Converts results to text and extracts specific digits using substring selection
[7:12] - Concatenates the four number segments with hyphens as separators
How It Works
Example Output
Use Cases
- Generating reference numbers or transaction IDs
- Creating pseudo-random identifiers without requiring cryptographic security
- Producing readable, hyphenated codes for display purposes
Not cryptographically secure — uses deterministic operations on time values. Will produce different values on each evaluation as time changes.