Digibee Documentation
Request documentationBook a demo
English
English
  • Quick start
  • Highlights
    • Release notes
      • Release notes 2025
        • May
        • April
        • March
        • February
        • January
      • Release notes 2024
        • December
        • November
        • October
        • September
        • August
          • Connectors release 08/20/2024
        • July
        • June
        • May
        • April
        • March
        • February
        • January
      • Release notes 2023
        • December
        • November
        • October
        • September
        • August
        • July
        • June
        • May
        • April
        • March
        • February
        • January
      • Release notes 2022
        • December
        • November
        • October
        • September
        • August
        • July
        • June
        • May
        • April
        • March
        • February
        • January
      • Release notes 2021
      • Release notes 2020
    • AI Pair Programmer
    • Digibeectl
      • Getting started
        • How to install Digibeectl on Windows
      • Digibeectl syntax
      • Digibeectl operations
  • Digibee in action
    • Use Cases in Action
      • Improving integration performance with API pagination
      • Automating file storage with Digibee
      • Reprocessing strategy in event-driven integrations
      • Key practices for securing sensitive information in pipelines with Digibee
      • OAuth2 for secure API access
      • Secure your APIs with JWT in Digibee
      • Integration best practices for developers on the Digibee Integration Platform
      • How to use Event-driven architecture on the Digibee Integration Platform
      • Dynamic file download with Digibee
      • Microservices: Circuit Breaker pattern for improving resilience
      • Error handling strategy in event-driven integrations
    • Troubleshooting
      • Integration guidance
        • How to resolve common pipeline issues
        • How to resolve Error 409: “You cannot update a pipeline that is not on draft mode”
        • How to resolve the "Pipeline execution was aborted" error
        • Integrated authentication with Microsoft Entra ID
        • How to resolve the "Failed to initialize pool: ONS configuration failed" error
        • How to perform IP address mapping with Progress database
        • How to build integration flows that send error notifications
        • How to send pipeline logs to external monitoring systems
        • How JSONPath differs in connectors and the Execution panel
        • Using JSONPath to validate numbers with specific initial digits
        • How to analyze the "Network error: Failed to fetch" in the Execution panel
        • How to handle request payloads larger than 5MB
        • How to configure Microsoft Entra ID to display groups on the Digibee Integration Platform
        • How to build an HL7 message
      • Connectors behavior and configuration
        • Timeout in the Pipeline Executor connector
        • How to use DISTINCT and COUNT in the Object Store
        • Understanding @@DGB_TRUNCATED@@ on the Digibee Integration Platform
        • How to resolve names without a DNS - REST, SOAP, SAP (web protocols)
        • How to read and write files inside a folder
        • AuthToken Reuse for Salesforce connector
        • How to resolve the "Invalid payload" error in API Integration
        • Supported databases
          • Functions and uses for databases
      • Connectors implementation and usage examples
        • Google Storage: Usage scenarios
        • DB V2: Usage scenarios
        • For Each: Usage example
        • Template and its uses
        • Digibee JWT implementation
        • Email V1: Usage example (Deprecated)
      • JOLT applications
        • Transformer: Getting to know JOLT
        • Transformer: Transformations with JOLT
        • Transformer: Add values to list elements
        • Transformer: Operations overview
        • Transformer: Date formatting using split and concat
        • Transformer: Simple IF-ELSE logic with JOLT
      • Platform access and performance tips
        • How to solve login problems on the Digibee Integration Platform
        • How to receive updates from Digibee Status Page
        • How to clean the Digibee Integration Platform cache
      • Governance troubleshooting guidance
        • How to consume Internal API pipelines using ZTNA
        • How to use Internal API with and without a VPN
        • How to generate, convert, and register SSH Keys
        • mTLS authentication
          • How to configure mTLS on the Digibee Integration Platform
          • FAQs: Certificates in mTLS
        • How to connect Digibee to Oracle RAC
        • How to connect Digibee to SAP
        • How to connect Digibee to MongoDB Atlas using VPN
        • How to manage IPs on the Digibee Integration Platform
        • Configuring the Dropbox account
        • How to use your Gmail account with the Digibee email component (SMTP)
        • How to use the CORS policy on the Digibee Integration Platform
      • Deployment scenarios
        • Solving the “Out of memory” errors in deployment
        • Warning of route conflicts
    • Best practices
      • JOLT and Double Braces on Digibee: Choosing the right method for data transformation
      • Best practices for building a pipeline
      • Best practices on validating messages in a consumer pipeline
      • Avoiding loops and maximizing pipeline efficiency
      • Naming: Global, Accounts, and API Keys
      • Pagination tutorial
        • Pagination tutorial - part 1
        • Pagination tutorial - part 2
        • Pagination tutorial - part 3
        • Pagination tutorial - part 4
      • Pagination example
      • Event-driven architecture
      • Notification model in event-driven integrations
      • OAuth2 integration model with Digibee
      • Best practices for error handling in pipelines
      • Highly scalable ETL model for Digibee
    • Digibee Academy
      • Integration Developer Bootcamp
  • Reference guides
    • Connectors
      • AI Tools
        • LLM Connector
      • AWS
        • S3 Storage
        • SQS
        • AWS Secrets Manager
        • AWS Athena
        • AWS CloudWatch
        • AWS Elastic Container Service (ECS)
        • AWS Eventbridge
        • AWS Identity and Access Management (IAM)
        • AWS Kinesis
        • AWS Kinesis Firehose
        • AWS Key Management Service (KMS)
        • AWS Lambda
        • AWS MQ
        • AWS Simple Email Service (SES)
        • AWS Simple Notification System (SNS)
        • AWS Security Token Service (STS)
        • AWS Translate
      • Azure
        • Azure CosmosDB
        • Azure Event Hubs
        • Azure Key Vault
        • Azure ServiceBus
        • Azure Storage DataLake Service
        • Azure Storage Queue Service
      • Enterprise applications
        • SAP
        • Salesforce
        • Braintree
        • Facebook
        • GitHub
        • Jira
        • ServiceNow
        • Slack
        • Telegram
        • Twilio
        • WhatsApp
        • Wordpress
        • Workday
        • Zendesk
      • File storage
        • Blob Storage (Azure)
        • Digibee Storage
        • Dropbox
        • FTP
        • Google Drive
        • Google Storage
        • OneDrive
        • SFTP
        • WebDav V2
        • WebDav (Deprecated)
      • Files
        • Append Files
        • Avro File Reader
        • Avro File Writer
        • CSV to Excel
        • Excel
        • File Reader
        • File Writer
        • GZIP V2
        • GZIP V1 (Deprecated)
        • Parquet File Reader
        • Parquet File Writer
        • Stream Avro File Reader
        • Stream Excel
        • Stream File Reader
        • Stream File Reader Pattern
        • Stream JSON File Reader
        • Stream Parquet File Reader
        • Stream XML File Reader
        • XML Schema Validator
        • ZIP File V2
        • ZIP File
        • NFS
      • Flow
        • Delayer
      • Google/GCP
        • Google BigQuery
        • Google BigQuery Standard SQL
        • Google Calendar
        • Google Cloud Functions
        • Google Mail
        • Google PubSub
        • Google Secret Manager
        • Google Sheets
      • Industry solutions
        • FHIR (Beta)
        • Gupy Public API
        • HL7
        • HubSpot: Sales and CMS
        • Mailgun API
        • Oracle NetSuite (Beta)
        • Orderful
        • Protheus: Billing and Inventory of Cost
      • Logic
        • Block Execution
        • Choice
        • Do While
        • For Each
        • Retry
        • Parallel Execution
      • Queues and messaging
        • Event Publisher
        • JMS
        • Kafka
        • RabbitMQ
      • Security
        • AES Cryptography
        • Asymmetric Cryptography
        • CMS
        • Digital Signature
        • JWT (Deprecated)
        • JWT V2
        • Google IAP Token
        • Hash
        • Digibee JWT (Generate and Decode)
        • LDAP
        • PBE Cryptography
        • PGP
        • RSA Cryptography
        • Symmetric Cryptography
      • Structured data
        • CassandraDB
        • DB V2
        • DB V1 (Deprecated)
        • DynamoDB
        • Google Big Table
        • Memcached
        • MongoDB
        • Object Store
        • Relationship
        • Session Management
        • Stored Procedure
        • Stream DB V3
        • Stream DB V1 (Deprecated)
        • ArangoDb
        • Caffeine Cache
        • Caffeine LoadCache
        • Couchbase
        • CouchDB
        • Ehcache
        • InfluxDB
      • Tools
        • Assert V2
        • Assert V1 (Deprecated)
        • Base64
        • CSV to JSON V2
        • CSV to JSON V1 (Deprecated)
        • HL7 Message Transformer (Beta)
        • HTML to PDF
        • Transformer (JOLT) V2
        • JSLT
        • JSON String to JSON Transformer
        • JSON to JSON String Transformer
        • JSON to XML Transformer
        • JSON to CSV V2
        • JSON to CSV Transformer (Deprecated)
        • JSON Path Transformer V2
        • JSON Path Transformer
        • JSON Transformer
        • Log
        • Pipeline Executor
        • QuickFix (Beta)
        • SSH Remote Command
        • Script (JavaScript)
        • Secure PDF
        • Store Account
        • Template Transformer
        • Throw Error
        • Transformer (JOLT)
        • Validator V1 (Deprecated)
        • Validator V2
        • XML to JSON Transformer
        • XML Transformer
        • JSON Generator (Mock)
      • Web protocols
        • Email V2
        • Email V1 (Deprecated)
        • REST V2
        • REST V1 (Deprecated)
        • SOAP V1 (Deprecated)
        • SOAP V2
        • SOAP V3
        • WGet (Download HTTP)
        • gRPC
    • Triggers
      • Web Protocols
        • API Trigger
        • Email Trigger
        • Email Trigger V2
        • HTTP Trigger
        • HTTP File Trigger
          • HTTP File Trigger - Downloads
          • HTTP File Trigger - Uploads
        • REST Trigger
      • Scheduling
        • Scheduler Trigger
      • Messaging and Events
        • Event Trigger
        • JMS Trigger
        • Kafka Trigger
        • RabbitMQ Trigger
      • Others
        • DynamoDB Streams Trigger
        • HL7 Trigger
        • Salesforce Trigger - Events
    • Double Braces
      • How to reference data using Double Braces
      • Double Braces functions
        • Math functions
        • Utilities functions
        • Numerical functions
        • String functions
        • JSON functions
        • Date functions
        • Comparison functions
        • File functions
        • Conditional functions
      • Double Braces autocomplete
  • Development cycle
    • Build
      • Canvas
        • AI Assistant
        • Smart Connector User Experience
        • Execution panel
        • Design and Inspect Mode
        • Linter: Canvas building validation
        • Connector Mocking
      • Pipeline
        • How to create a pipeline
        • How to scaffold a pipeline using an OpenAPI specification
        • How to create a project
        • Pipeline version history
        • Pipeline versioning
        • Messages processing
        • Subpipelines
      • Capsules
        • How to use Capsules
          • How to create a Capsule collection
            • Capsule header dimensions
          • How to create a Capsule group
          • How to configure a Capsule
          • How to build a Capsule
          • How to test a Capsule
          • How to save a Capsule
          • How to publish a Capsule
          • How to change a Capsule collection or group
          • How to archive and restore a Capsule
        • Capsules versioning
        • Public capsules
          • SAP
          • Digibee Tools
          • Google Sheets
          • Gupy
          • Send notifications via email
          • Totvs Live
          • Canvas LMS
        • AI Assistant for Capsules Docs Generation
    • Run
      • Run concepts
        • Autoscalling
      • Deployment
        • Deploying a pipeline
        • How to redeploy a pipeline
        • How to promote pipelines across environments
        • How to check the pipeline deployment History
        • How to rollback to a previous deployment version
        • Using deployment history advanced functions
        • Pipeline deployment status
      • How warnings work on pipelines in Run
    • Monitor
      • Monitor Insights (Beta)
      • Completed executions
        • Pipeline execution logs download
      • Pipeline logs
      • Pipeline Metrics
        • Pipeline Metrics API
          • How to set up Digibee API metrics with Datadog
          • How to set up Digibee API metrics with Prometheus
        • Connector Latency
      • Alerts
        • How to create an alert
        • How to edit an alert
        • How to activate, deactivate or duplicate an alert
        • How to delete an alert
        • How to configure alerts on Slack
        • How to configure alerts on Telegram
        • How to configure alerts through a webhook
        • Available metrics
        • Best practices about alerts
        • Use cases for alerts
      • VPN connections monitoring
        • Alerts for VPN metrics
  • Connectivity management
    • Connectivity
    • Zero Trust Network Access (ZTNA)
      • Prerequisites for using ZTNA
      • How to view connections (Edge Routers)
      • How to view the Network Mappings associated with an Edge Router
      • How to add new ZTNA connections (Edge Routers)
      • How to delete connections (Edge Routers)
      • How to view routes (Network Mapping)
      • How to add new routes (Network Mapping)
      • How to add routes in batch for ZTNA
      • How to edit routes (Network Mapping)
      • How to delete routes (Network Mapping)
      • How to generate new keys (Edge Router)
      • How to change the environment of Edge routers
      • ZTNA Inverse Flow
      • ZTNA Groups
    • Virtual Private Network (VPN)
  • Platform administration
    • Administration
      • Audit
      • Access control
        • Users
        • Groups
        • Roles
          • List of permissions by service
          • Roles and responsibilities: Governance and key stakeholder identification
      • Identity provider integration
        • How to integrate an identity provider
        • Authentication rules
        • Integration of IdP groups with Digibee groups
          • How to create a group integration
          • How to test a group integration
          • How to enable group integrations
          • How to edit a group integration
          • How to delete a group integration
      • User authentication and authorization
        • How to activate and deactivate two-factor authentication
        • Login flow
      • Organization groups
    • Settings
      • Globals
        • How to create Globals
        • How to edit or delete Globals
        • How to use Globals
      • Accounts
        • Configuring each account type
        • Monitor changes to account settings in deployed pipelines
        • OAuth2 Architecture
          • Registration of new OAuth providers
      • Consumers (API Keys)
      • Relationship model
      • Multi-Instance
        • Deploying a multi-instance pipeline
      • Data Streaming
        • How to use Data Streaming with Datadog
    • Governance
      • Policies
        • Security
          • Internal API access policy
          • External API access policy
          • Sensitive fields policy
        • Transformation
          • Custom HTTP header
          • CORS HTTP header
        • Limit of Replicas policy
    • Licensing
      • Licensing models
        • Consumption Based model
      • Capacity and quotas
      • License consumption
    • Digibee APIs
      • How to create API credentials
  • Digibee concepts
    • Pipeline Engine
      • Digibee Integration Platform Pipeline Engine v2
      • Support Dynamic Accounts (Restricted Beta)
    • Introduction to ZTNA
  • Help & FAQ
    • Digibee Customer Support
    • Request documentation, suggest features, or send feedback
    • Beta Program
    • Security and compliance
    • About Digibee
Powered by GitBook
On this page
  • CAPITALIZE
  • Syntax
  • Usage example
  • CONCAT
  • Syntax
  • Usage example
  • CONTAINS
  • Syntax
  • Usage example
  • DEFAULT
  • Syntax
  • Usage example
  • ESCAPE
  • Syntax
  • Usage example
  • INDEXOF
  • Syntax
  • Usage examples
  • JOIN
  • Syntax
  • Usage examples
  • LASTINDEXOF
  • Syntax
  • Usage examples
  • LEFTPAD
  • Syntax
  • Usage examples
  • LOWERCASE
  • Syntax
  • Usage example
  • MATCHES
  • Syntax
  • Usage example
  • NORMALIZE
  • Syntax
  • Usage example
  • RANDOMSTRINGS
  • Syntax
  • Usage example
  • REPLACE
  • Syntax
  • Usage example
  • RIGHTPAD
  • Syntax
  • Usage examples
  • SPLIT
  • Syntax
  • Usage example
  • STRINGMATCHES
  • Syntax
  • Usage example
  • SUBSTRING
  • Syntax
  • Usage example
  • TOSTRING
  • Syntax
  • Usage example
  • TRIM
  • Syntax
  • Usage example
  • UNESCAPE
  • Syntax
  • Usage example
  • UPPERCASE
  • Syntax
  • Usage example

Was this helpful?

  1. Reference guides
  2. Double Braces
  3. Double Braces functions

String functions

Learn about string functions in the Digibee Integration Platform and how to use them.

String functions are used to manipulate string data. These are the string functions you can use with Digibee's Double Braces language:

CAPITALIZE

Capitalizes the first character of a string. Other characters are not affected.

Syntax

CAPITALIZE(value : string) -> string
  • value : the string whose first letter is to be capitalized.

Returns: a string that is a version of value with the first character in upper case.

Usage example

{{ CAPITALIZE("hello, world!") }}

The expected result is:

"Hello, world!"

CONCAT

Concatenates any number of strings into a single string.

Syntax

CONCAT(*values: string) -> string
  • values: any number of strings to be concatenated.

Returns: the concatenated string.

Usage example

{{ CONCAT("Hello", ", ", "world!") }}

The expected result is:

"Hello, world!"

CONTAINS

Checks if a substring is contained in a given string.

Syntax

CONTAINS(main_string: string, sub_string: string) -> boolean
  • main_string: a string representing the main string to search in.

  • sub_string: a string representing the substring to search for.

Returns: a boolean value indicating whether the substring is found or not. true is returned if the substring is found in the main string, and false is returned otherwise.

Usage example

{{ CONTAINS("Hello, world!", "world") }}

The expected result is:

true

DEFAULT

Returns a default value when a reference is made to a null or nonexistent value.

Syntax

DEFAULT(value : string, defaultValue : string) -> string
  • value: the value to be checked for null or nonexistence.

  • defaultValue: the default value to be returned if value is null or nonexistent.

Returns: either value, if value is not null or nonexistent, or defaultValue, if it is.

Usage example

Suppose you are using this function in the JSON parameter of a JSON Generator component that receives the following payload:

{
"name" : "John Doe",
"age" : null
}

You can use the DEFAULT function to replace the null value with a “not available” string.

{
"name" : "John Doe",
"age" : {{ DEFAULT(message.age, "not available") }}
}

The expected result is:

{
"name" : "John Doe",
"age" : "not available"
}

ESCAPE

Encode a string using escape sequences.

Syntax

ESCAPE(value: string, escapeType: string<optional>) -> string
  • value: the string to be encoded.

  • escapeType: the type of escaping to be used. Valid options are "JSON", "XML", "CSV", and "HTML". Defaults to “JSON”.

Returns: a new string in which certain characters have been escaped.

Usage example

{{ ESCAPE("<h1>Hello, world!</h1>", "HTML") }}

The expected result is:

"&lt;h1&gt;Hello, world!&lt;/h1&gt;"

INDEXOF

Returns the index of the first occurrence of a substring within a given string. This search is case-sensitive and the index starts at 0.

Syntax

INDEXOF(main_string: string, sub_string: string, fromIndex: integer<optional>) -> int
  • main_string: a string representing the main string to search in.

  • sub_string: a string representing the substring to search for.

  • fromIndex: the index from which the search should start. Defaults to 0.

Returns: an integer indicating the index of the first occurrence of the substring in the main string. If the substring is not found, the function returns -1.

Usage examples

{{ INDEXOF("Hello, world!", "world") }}

The expected result is:

7
{{ INDEXOF("Hello, world!", "welcome") }}

The expected result is:

-1

JOIN

Concatenates a list of strings into a single string with a specified separator character between each string.

Syntax

JOIN(separator: string, *values: string) -> string
  • separator: a string representing the separator character to be used between each string.

  • values: any number of strings to be concatenated.

Returns: a string value representing the concatenated string with the specified separator character between each string in the input list.

Usage examples

{{ JOIN(" ", "These","words", "are", "separated","by","spaces") }}

The expected result is:

"These words are separated by spaces"
{{ JOIN("-", "These","words", "are","separated","by","hyphens") }}

The expected result is:

"These-words-are-separated-by-hyphens"

LASTINDEXOF

Returns the index of the last occurrence of a substring within a given string. This search is case-sensitive and the index starts at 0.

Syntax

LASTINDEXOF(main_string: string, sub_string: string) -> int
  • main_string: a string representing the main string to search in.

  • sub_string: a string representing the substring to search for.

  • fromIndex: the index from which the search should start. Defaults to 0.

Returns: an integer indicating the index of the last occurrence of the substring in the main string. If the substring is not found, the function returns -1.

Usage examples

{{ LASTINDEXOF("Hello, world!", "o") }}

The expected result is:

8
{{ LASTINDEXOF("Hello, world!", "a") }}

Because the substring “a” is not contained in the string “Hello, world!”, the expected result is:

-1

LEFTPAD

Fills the left side of a given string with a specified character to a specific length.

Syntax

LEFTPAD(value: string, length: integer, character:string<optional>) -> string
  • value: the input string to be padded.

  • length: the length of the desired string.

  • character: the character that will be used to pad the left side of the input string. Defaults to a blank space.

Returns: a padded string of the desired length with the specified character filling the left side of the input string. If the input string is already longer than the specified length, the original string is returned.

Usage examples

{{ LEFTPAD("example", 10, "-")

The expected result is:

"---example"
{{ LEFTPAD("hello", 5, "*")

Because “hello” already has 5 characters, the expected result is:

"hello"

LOWERCASE

Converts all characters to lowercase.

Syntax

LOWERCASE(value: string) -> string
  • value: the input string to be converted to lowercase.

Returns: the string that is the lowercase equivalent of the input string.

Usage example

{{ LOWERCASE("HELLO, WorLD!") }}

The expected result is:

"hello, world!"

MATCHES

Checks if a string matches a regular expression.

Syntax

MATCHES(value: string, pattern: string) -> boolean
  • value: a string that is to be matched against the given regular expression.

  • pattern: a regular expression pattern that is to be used to match against the input string.

Returns: true if the input string matches the regular expression, false, otherwise.

Usage example

{{ MATCHES("123-456-7890", "\\d{3}-\\d{3}-\\d{4}") }}

The expected result is:

true

NORMALIZE

Transforms any special characters into non-special characters.

Syntax

NORMALIZE(value: string) -> string
  • value: the string to be normalized.

Returns: the normalized string with special characters replaced by their non-special counterparts.

Usage example

{{ NORMALIZE("São Paulo") }}

The expected result is:

"Sao Paulo"

RANDOMSTRINGS

Generate random strings given a charset and string length.

Syntax

RANDOMSTRINGS(charset: string, length: int) -> string
  • charset : the charset to be used. Options are: "ALPHANUMERIC”, "ALPHABETIC" "ASCII", and "NUMERIC".

  • length: the length of the output string.

Usage example

{{ RANDOMSTRINGS("ALPHANUMERIC",10) }}

The output varies because it is random. One possible output is:

"lUbCIs7T3G"

REPLACE

Replaces all occurrences of a substring in a string based on a given regular expression.

Syntax

REPLACE(value: string, pattern: string, replacement: string) -> string
  • value: the string to be searched and altered.

  • pattern: a regular expression pattern that specifies the substring to search for.

  • replacement: a string that will replace all occurrences of the matched pattern in the input string.

Usage example

{{ REPLACE("Hello, world!", "Hello", "Bonjour") }}

The expected result is:

"Bonjour, world!"

RIGHTPAD

Fills the right side of a given string with a specified character to a specific length.

Syntax

RIGHTPAD(value: string, length: integer, character:string<optional>) -> string
  • value: the input string to be padded.

  • length: the length of the desired string.

  • character: the character that will be used to pad the right side of the input string. Defaults to a blank space.

Returns: a padded string of the desired length with the specified character filling the right side of the input string. If the input string is already longer than the specified length, the original string is returned.

Usage examples

{{ RIGHTPAD("example", 10, "-") }}

The expected result is:

"Example---"
{{ RIGHTPAD("hello", 5, "*") }}

Because “hello” already has 5 characters, the expected result is:

"hello"

SPLIT

Splits a string into an array of strings based on a specified regular expression pattern.

Syntax

SPLIT(value: string, pattern: string) -> Array[string]
  • value: the string to be split.

  • pattern: a regular expression pattern that specifies the split point. The string will be split at all occurrences of the pattern.

Returns: an array of strings resulting from the split operation.

Usage example

{{ SPLIT("Hello, world!", " ") }}

The expected result is:

["Hello,", "world!"]

STRINGMATCHES

Returns an array of all the matched expressions in a string that satisfy a given pattern.

Syntax

STRINGMATCHES(value: string, pattern: string, patternFlag: string<optional>) -> Array[string]
  • value: a string to search for matches.

  • pattern: a regular expression pattern to match against the string.

  • patternFlag: the behavior of the regular expression engine. This can be used to modify the matching behavior of the regular expression, such as case-insensitive matching, multi-line matching, or extended syntax. If not specified, the regular expression engine uses its default behavior. Options are:

    • CANON_EQ: activate canonical equivalence matching of Unicode characters. When this flag is activated, characters that look identical are matched even if they have different Unicode codepoints.

    • CASE_INSENSITIVE: deactivate case sensitivity.

    • COMMENTS: allow comments in the regular expression pattern. You can add comments after a hashtag #.

    • DOTALL: activate “dotall” mode, that allows a dot . to match the newline character \n.

    • LITERAL: when this flag is specified then the input string that specifies the pattern is treated as a sequence of literal characters. Metacharacters or escape sequences in the input sequence will be given no special meaning.

    • MULTILINE: activate matching across multiple lines.

    • UNICODE_CASE: allows case-insensitive matching of Unicode characters, taking into account Unicode case folding rules.

    • UNICODE_CHARACTER_CLASS: allows Unicode character classes in the regular expression pattern.

    • UNIX_LINES: changes the behavior of the ^ and $ metacharacters to match the beginning and end of a line, respectively, rather than the beginning and ending of the input string.

Returns: an array of all the matched expressions in the string that satisfy the pattern.

Usage example

{{ STRINGMATCHES("Hello, world!", "hello", "CASE_INSENSITIVE") }}

The expected result is:

["Hello"]

SUBSTRING

Extract a substring from a given string.

Syntax

SUBSTRING(value: string, start: int, end: int<optional>, throwIndexOutOfBoundError: boolean<optional>) -> string
  • value: the original string from which the substring is to be extracted.

  • start: the starting index of the substring. The index starts at 0.

  • end: the ending index of the substring. If not provided, the extraction will end at the last character of the original string.

  • throwIndexOutOfBoundError: if true, an error will be thrown if the provided indexes are out of range. Otherwise, the original string will be returned. Defaults to true.

Returns: the extracted substring from the original string.

Usage example

{{ SUBSTRING("Hello, world!", 0, 5) }}

The expected result is:

"Hello"

TOSTRING

Convert an object to its string representation.

Syntax

TOSTRING(object: any) -> string
  • object: the object to be converted to a string. It can be of any type.

Usage example

{{ TOSTRING(123) }}

The expected result is:

"123"

TRIM

Removes blank spaces at the beginning and end of a string.

Syntax

TRIM(value : string) -> string
  • value: the string to be trimmed.

Returns: a string that is a trimmed version of value.

Usage example

{{ TRIM(" Hello, world! ") }}

The expected result is:

"Hello, world!"

UNESCAPE

Unencode a string that has escape sequences.

Syntax

UNESCAPE(value: string, escapeType: string<optional>) -> string
  • value: the string to be unencoded.

  • escapeType: the type of escaping to be used. Valid options are "JSON", "XML", "CSV", and "HTML". Defaults to “JSON”.

Returns: a new string in which certain characters have been unescaped.

Usage example

{{ UNESCAPE("&lt;h1&gt;Hello, world!&lt;/h1&gt;", "HTML") }}

The expected result is:

"<h1>Hello, world!</h1>"

UPPERCASE

Converts all characters to uppercase.

Syntax

UPPERCASE(value: string) -> string
  • value: the input string to be converted to uppercase.

Returns: the string that is the uppercase equivalent of the input string.

Usage example

{{ UPPERCASE("Hello, world!") }}

The expected result is:

"HELLO, WORLD!"
PreviousNumerical functionsNextJSON functions

Last updated 4 months ago

Was this helpful?

Read to learn more about referencing data with Double Braces.

this article