Text
Combine, change, search and measure text.
Combine texts
Joins multiple texts end-to-end.
Inputs
| Name | Type | Required | Details |
|---|---|---|---|
| Values | List of Text | Yes | The texts to combine. |
Outputs
| Name | Type | Details |
|---|---|---|
| Result | Text | The combined text. |
Format text template
Replaces {placeholder} tokens in a template using a lookup table.
Inputs
| Name | Type | Required | Details |
|---|---|---|---|
| Template | Text | Yes | Template text with {placeholder} tokens. |
| Values | Lookup table of Text to Text | Yes | Lookup table of placeholder names to values. |
Outputs
| Name | Type | Details |
|---|---|---|
| Result | Text | The interpolated text. |
Replace in text
Replaces occurrences of a piece of text with another value.
Inputs
| Name | Type | Required | Details |
|---|---|---|---|
| Text | Text | Yes | The text to search in. |
| Search | Text | Yes | The piece of text to look for. |
| Replacement | Text | Yes | What to replace matches with. |
| Replace all | Yes/No | No | Replace every occurrence (true) or just the first (false). Default: Yes. |
Outputs
| Name | Type | Details |
|---|---|---|
| Result | Text | The resulting text. |
Extract with regex
Matches the text against a regular expression and returns the requested capture group (0 = the whole match), or empty when there is no match.
Inputs
| Name | Type | Required | Details |
|---|---|---|---|
| Text | Text | Yes | The text to search. |
| Pattern | Text | Yes | The regular-expression pattern. |
| Flags | Text | No | Optional regex flags (e.g. "i" for case-insensitive). |
| Group | Whole number | No | Capture-group index to return (0 = the whole match). Minimum: 0. Default: 0. |
Outputs
| Name | Type | Details |
|---|---|---|
| Result | Text | The matched group, or empty when there is no match. May be empty. |
Escape Discord markdown
Escapes Discord markdown in the text so formatting (bold, italics, code, spoilers, headings, lists, masked links) renders as literal characters. Optionally also neutralizes @everyone/@here and user, role and channel mentions so the text can never ping.
Inputs
| Name | Type | Required | Details |
|---|---|---|---|
| Text | Text | Yes | The text to escape. |
| Escape mentions | Yes/No | No | Also neutralize @everyone/@here and user, role and channel mentions so they can't ping (on by default). Default: Yes. |
Outputs
| Name | Type | Details |
|---|---|---|
| Text | Text | The escaped text, safe to send as plain content. |
To uppercase
Converts a text to uppercase.
Inputs
| Name | Type | Required | Details |
|---|---|---|---|
| Text | Text | Yes | The text to convert. |
Outputs
| Name | Type | Details |
|---|---|---|
| Result | Text | The uppercased text. |
To lowercase
Converts a text to lowercase.
Inputs
| Name | Type | Required | Details |
|---|---|---|---|
| Text | Text | Yes | The text to convert. |
Outputs
| Name | Type | Details |
|---|---|---|
| Result | Text | The lowercased text. |
Title case
Capitalizes the first letter of each word in the text.
Inputs
| Name | Type | Required | Details |
|---|---|---|---|
| Text | Text | Yes | The text to convert. |
Outputs
| Name | Type | Details |
|---|---|---|
| Result | Text | The title-cased text. |
Trim text
Removes leading and trailing whitespace.
Inputs
| Name | Type | Required | Details |
|---|---|---|---|
| Text | Text | Yes | The text to trim. |
Outputs
| Name | Type | Details |
|---|---|---|
| Result | Text | The trimmed text. |
Split text
Splits a text into a list using a separator.
Inputs
| Name | Type | Required | Details |
|---|---|---|---|
| Text | Text | Yes | The text to split. |
| Separator | Text | Yes | The separator to split on. |
Outputs
| Name | Type | Details |
|---|---|---|
| Result | List of Text | The resulting list of texts. |
Text length
Returns the number of characters in a text.
Inputs
| Name | Type | Required | Details |
|---|---|---|---|
| Text | Text | Yes | The text to measure. |
Outputs
| Name | Type | Details |
|---|---|---|
| Length | Whole number | The length of the text. |
Starts with
Checks whether a text starts with the given prefix.
Inputs
| Name | Type | Required | Details |
|---|---|---|---|
| Text | Text | Yes | The text to check. |
| Prefix | Text | Yes | The prefix to look for. |
Outputs
| Name | Type | Details |
|---|---|---|
| Result | Yes/No | True if the text starts with the prefix. |
Ends with
Checks whether a text ends with the given suffix.
Inputs
| Name | Type | Required | Details |
|---|---|---|---|
| Text | Text | Yes | The text to check. |
| Suffix | Text | Yes | The suffix to look for. |
Outputs
| Name | Type | Details |
|---|---|---|
| Result | Yes/No | True if the text ends with the suffix. |
Contains text
Checks whether a text contains the given part.
Inputs
| Name | Type | Required | Details |
|---|---|---|---|
| Text | Text | Yes | The text to search in. |
| Needle | Text | Yes | The piece of text to search for. |
Outputs
| Name | Type | Details |
|---|---|---|
| Result | Yes/No | True if the piece of text is found. |
Part of text
Extracts a portion of a text starting at an index.
Inputs
| Name | Type | Required | Details |
|---|---|---|---|
| Text | Text | Yes | The source text. |
| Start | Whole number | Yes | Zero-based starting index. Minimum: 0. |
| Length | Whole number | No | Number of characters to extract; leave empty for the rest of the text. Minimum: 0. |
Outputs
| Name | Type | Details |
|---|---|---|
| Result | Text | The extracted part. |
Pad text left
Pads a text on the left until it reaches the desired length.
Inputs
| Name | Type | Required | Details |
|---|---|---|---|
| Text | Text | Yes | The text to pad. |
| Length | Whole number | Yes | The target total length. Minimum: 0. |
| Pad char | Text | Yes | Single character used to pad. Length: 1 to 1 characters. |
Outputs
| Name | Type | Details |
|---|---|---|
| Result | Text | The padded text. |
Pad text right
Pads a text on the right until it reaches the desired length.
Inputs
| Name | Type | Required | Details |
|---|---|---|---|
| Text | Text | Yes | The text to pad. |
| Length | Whole number | Yes | The target total length. Minimum: 0. |
| Pad char | Text | Yes | Single character used to pad. Length: 1 to 1 characters. |
Outputs
| Name | Type | Details |
|---|---|---|
| Result | Text | The padded text. |
Repeat text
Repeats a text a given number of times. The result is capped at 4096 characters.
Inputs
| Name | Type | Required | Details |
|---|---|---|---|
| Text | Text | Yes | The text to repeat. |
| Count | Whole number | Yes | How many times to repeat the text. Minimum: 0. |
Outputs
| Name | Type | Details |
|---|---|---|
| Result | Text | The repeated text. |
Pluralize
Selects the correct word form for a number using the locale's plural rules. You provide the forms (singular, plural and any extra forms a language needs); this action picks which one applies. Use %count% inside a form to insert the number.
Inputs
| Name | Type | Required | Details |
|---|---|---|---|
| Count | Decimal number | Yes | The number the word form is chosen for. |
| Singular form | Text | Yes | Form for the "one" category, e.g. "%count% item". |
| Plural form | Text | Yes | Form for the "other" category (the general plural), e.g. "%count% items". Also used as the fallback when a needed form is not provided. |
| Zero form | Text | No | Optional form for the "zero" category (used by some locales). |
| Two form | Text | No | Optional form for the "two" category (used by some locales). |
| Few form | Text | No | Optional form for the "few" category (used by some locales). |
| Many form | Text | No | Optional form for the "many" category (used by some locales). |
| Locale | Text | No | Locale whose plural rules are used, e.g. "en" or "de". Defaults to the server's language. |
Outputs
| Name | Type | Details |
|---|---|---|
| Text | Text | The chosen word form with %count% replaced by the number. |
Ordinal
Formats a number as a locale-correct ordinal, e.g. 1st, 2nd, 3rd (English) or 1., 2., 3. (German). Other locales return the number unchanged.
Inputs
| Name | Type | Required | Details |
|---|---|---|---|
| Number | Whole number | Yes | The number to format as an ordinal. |
| Locale | Text | No | Locale whose ordinal rules are used, e.g. "en" or "de". Defaults to the server's language. |
Outputs
| Name | Type | Details |
|---|---|---|
| Text | Text | The number with its ordinal suffix, e.g. "1st" or "1.". |
Truncate text
Shortens text to a maximum length, appending an ellipsis when it is cut. The result never exceeds the maximum length and is never split inside a character.
Inputs
| Name | Type | Required | Details |
|---|---|---|---|
| Text | Text | Yes | The text to shorten. |
| Maximum length | Whole number | Yes | Longest allowed result, including the ellipsis. Value: 1 to 100000. |
| Ellipsis | Text | No | Text appended when the input is cut (defaults to a single ellipsis character). Maximum length: 32 characters. Default: …. |
Outputs
| Name | Type | Details |
|---|---|---|
| Result | Text | The shortened text. |
Replace with regex
Replaces matches of a regular expression in the text with a replacement text. Add the "g" flag to replace every match instead of only the first.
Inputs
| Name | Type | Required | Details |
|---|---|---|---|
| Text | Text | Yes | The text to search. |
| Pattern | Text | Yes | The regular-expression pattern. |
| Replacement | Text | Yes | The text each match is replaced with (supports 2 group references). |
| Flags | Text | No | Optional regex flags (e.g. "g" for all matches, "i" for case-insensitive). |
Outputs
| Name | Type | Details |
|---|---|---|
| Result | Text | The text after replacement. |
Test with regex
Returns whether the text matches a regular expression.
Inputs
| Name | Type | Required | Details |
|---|---|---|---|
| Text | Text | Yes | The text to test. |
| Pattern | Text | Yes | The regular-expression pattern. |
| Flags | Text | No | Optional regex flags (e.g. "i" for case-insensitive). |
Outputs
| Name | Type | Details |
|---|---|---|
| Result | Yes/No | True when the text matches the pattern. |
Random text
Generates a random text of the given length from the chosen character set. Not for security-sensitive secrets.
Inputs
| Name | Type | Required | Details |
|---|---|---|---|
| Length | Whole number | Yes | Number of characters to generate (1-4096). Value: 1 to 4096. |
| Character set | Character set | No | Which characters may appear in the result. Default: Letters and digits. |
Outputs
| Name | Type | Details |
|---|---|---|
| Result | Text | The generated random text. |
Text similarity
Compares two texts and returns how similar they are, from 0 (completely different) to 1 (identical), based on edit distance.
Inputs
| Name | Type | Required | Details |
|---|---|---|---|
| First text | Text | Yes | The first text to compare. Maximum length: 1000 characters. |
| Second text | Text | Yes | The second text to compare. Maximum length: 1000 characters. |
Outputs
| Name | Type | Details |
|---|---|---|
| Similarity | Decimal number | Similarity score from 0 to 1. |