# Regex: List of Tokes

<table data-full-width="true"><thead><tr><th width="318">Description</th><th width="502">Extended description</th><th>Example</th><th data-hidden></th></tr></thead><tbody><tr><td>A single character of: a, b or c</td><td>Matches either an a, b or c character</td><td><code>[abc]</code></td><td>Common tokens</td></tr><tr><td>A character except for: a, b or c</td><td>Matches any character except for an a, b or c</td><td><code>[^abc]</code></td><td>Common tokens</td></tr><tr><td>A character in the range: a-z</td><td>Matches any characters between a and z, including a and z.</td><td><code>[a-z]</code></td><td>Common tokens</td></tr><tr><td>A character not in the range: a-z</td><td>Matches any characters except those in the range a-z.</td><td><code>[^a-z]</code></td><td>Common tokens</td></tr><tr><td>A character in the range: a-z or A-Z</td><td>Matches any characters between a-z or A-Z. You can combine as much as you, please.</td><td><code>[a-zA-Z]</code></td><td>Common tokens</td></tr><tr><td>Any single character</td><td>Matches any character other than newline (or including line terminators with the /s flag)</td><td><code>.</code></td><td>Common tokens</td></tr><tr><td>Alternate - match either a or b</td><td>Matches either what is before the | or what is after it - in this case `a` or `b`.</td><td><code>a|b</code></td><td>Common tokens</td></tr><tr><td>Any whitespace character</td><td>Matches any space, tab or newline character.</td><td><code>\s</code></td><td>Common tokens</td></tr><tr><td>Any non-whitespace character</td><td>Matches anything other than a space, tab or newline.</td><td><code>\S</code></td><td>Common tokens</td></tr><tr><td>Any digit</td><td>Matches any decimal digit. Equivalent to [0-9].</td><td><code>\d</code></td><td>Common tokens</td></tr><tr><td>Any non-digit</td><td>Matches anything other than a decimal/digit.</td><td><code>\D</code></td><td>Common tokens</td></tr><tr><td>Any word character</td><td>Matches any letter, digit or underscore. Equivalent to [a-zA-Z0-9_].</td><td><code>\w</code></td><td>Common tokens</td></tr><tr><td>Any non-word character</td><td>Matches anything other than a letter, digit or underscore. Equivalent to [^a-zA-Z0-9_]</td><td><code>\W</code></td><td>Common tokens</td></tr><tr><td>Match everything enclosed</td><td>A non-capturing group allows you to apply quantifiers to part of your regex but does not capture/assign an ID.</td><td><code>(?:...)</code></td><td>Common tokens</td></tr><tr><td>Capture everything enclosed</td><td>Isolates part of the full match to be later referred to by ID within the regex or the matches array. IDs start at 1.</td><td><code>(...)</code></td><td>Common tokens</td></tr><tr><td>Zero or one of a</td><td>Matches an `a` character or nothing.</td><td><code>a?</code></td><td>Common tokens</td></tr><tr><td>Zero or more of a</td><td>Matches zero or more consecutive `a` characters.</td><td><code>a*</code></td><td>Common tokens</td></tr><tr><td>One or more of a</td><td>Matches one or more consecutive `a` characters.</td><td><code>a+</code></td><td>Common tokens</td></tr><tr><td>Exactly 3 of a</td><td>Matches exactly 3 consecutive `a` characters.</td><td><code>a{3}</code></td><td>Common tokens</td></tr><tr><td>3 or more of a</td><td>Matches at least 3 consecutive `a` characters.</td><td><code>a{3,}</code></td><td>Common tokens</td></tr><tr><td>Between 3 and 6 of a</td><td>Matches between 3 and 6 (inclusive) consecutive `a` characters.</td><td><code>a{3,6}</code></td><td>Common tokens</td></tr><tr><td>Start of string</td><td>Matches the start of a string without consuming any characters. If /m multiline mode is used, this will also match immediately after a newline character.</td><td><code>^</code></td><td>Common tokens</td></tr><tr><td>End of string</td><td>Matches the end of a string without consuming any characters. If multiline mode is used, this will also match immediately before a newline character.</td><td><code>$</code></td><td>Common tokens</td></tr><tr><td>A word boundary</td><td>Matches, without consuming any characters, immediately between a character matched by \w and a character not matched by \w (in either order). It cannot be used to separate non words from words.</td><td><code>\b</code></td><td>Common tokens</td></tr><tr><td>Non-word boundary</td><td>Matches, without consuming any characters, at the position between two characters matched by \w.</td><td><code>\B</code></td><td>Common tokens</td></tr><tr><td>Newline</td><td>Matches a newline character</td><td><code>\n</code></td><td>General tokens</td></tr><tr><td>Carriage return</td><td>Matches a carriage return, unicode character U+2185.</td><td><code>\r</code></td><td>General tokens</td></tr><tr><td>Tab</td><td>Matches a tab character. Historically, tab stops happen every 8 characters.</td><td><code>\t</code></td><td>General tokens</td></tr><tr><td>Null character</td><td>Matches a null character, most often visually represented in Unicode using U+2400.</td><td><code>\0</code></td><td>General tokens</td></tr><tr><td>Positive Lookahead</td><td>Asserts that the given subpattern can be matched here, without consuming characters</td><td><code>(?=...)</code></td><td>Group Constructs</td></tr><tr><td>Negative Lookahead</td><td>Starting at the current position in the expression, ensures that the given pattern will not match. Does not consume characters.</td><td><code>(?!...)</code></td><td>Group Constructs</td></tr><tr><td>Positive Lookbehind</td><td>Ensures that the given pattern will match, ending at the current position in the expression. The pattern must have a fixed width. Does not consume any characters.</td><td><code>(?&#x3C;=...)</code></td><td>Group Constructs</td></tr><tr><td>Negative Lookbehind</td><td>Ensures that the given pattern would not match and end at the current position in the expression. The pattern must have a fixed width. Does not consume characters.</td><td><code>(?&#x3C;!...)</code></td><td>Group Constructs</td></tr></tbody></table>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.tomat.ai/data-transformation/formulas/regex-list-of-tokes.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
