> For the complete documentation index, see [llms.txt](https://docs.cascade.io/cascade/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.cascade.io/cascade/tools/cleaning/text2columns.md).

# Text to Columns

Text to columns offers the ability to split one column into many based on characters that appear in that column.

Any column can be split on a number of different characters combinations:

| Option           | Description                                                                                                                                                                                                                                                      |
| ---------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Common Delimiter | <p>Split on commonly-used characters:</p><ul><li>Tab</li><li>Comma</li><li>Semicolon</li><li>Space</li><li>Pipe</li></ul>                                                                                                                                        |
| Custom Delimiter | <p>Enter your own <strong>custom delimiter</strong> to split on or</p><p>Enter a <a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions/Cheatsheet"><strong>regex</strong></a> string to identify characters to split on</p> |

You also have the option to identify whether consecutive delimiters should be treated as one, or if your data has enclosing quotes.&#x20;

{% hint style="warning" %}
Note that regex and multi-character custom delimiters cannot be used in conjunction with the option to treat consecutive delimiters as one
{% endhint %}

### Example

Let's say we have a list of email addresses that we want to split into multiple columns:

{% embed url="<https://datawrapper.dwcdn.net/5Rt3U/1/>" %}

We want to split on the `.` inside the emails, so we select the **Custom** delimiter and enter `.`. We get the following result:

{% embed url="<https://datawrapper.dwcdn.net/VbvRi/2/>" %}

Note that some emails have multiple periods inside them -- the number of resulting columns equals the number of delimiters identified plus one.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://docs.cascade.io/cascade/tools/cleaning/text2columns.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
