Text Splitter

Split a comma-separated string, a sentence block or any delimited text into one item per line. Trim spaces and drop empty pieces. Free and private.

Data has a habit of turning up as one long line when you want it as a list. A tag field exported as “red, green, blue, yellow”. A paragraph you want sentence by sentence. A row of values separated by tabs copied out of a spreadsheet. An SQL IN list from a colleague. This tool cuts the text at a separator and puts each piece on its own line, which is the shape almost every other text tool expects.

Choosing where to cut

“Commas, semicolons, pipes” is the forgiving default and covers most pasted lists in one go, so “red, green; blue | yellow” becomes four lines. The single-character options are more exact: comma only, space, or tab. Tab is the one to use for a row copied from a spreadsheet. “End of sentence” splits after a full stop, question mark or exclamation mark that is followed by a space.

“Custom” lets you type any separator, of any length. You can use \n for a line break or \t for a tab, so splitting a list at “ - “ or “ :: “ works as you would expect.

Tidying as it splits

Real lists rarely split cleanly. A comma followed by a space leaves a space at the start of every piece, so “trim each piece” is on by default. Doubled separators leave empty pieces, such as “a,,b”, which “drop empty pieces” removes. Both are worth leaving on unless you want a precise picture of the structure.

The sentence option is simple. It looks for punctuation followed by space, so it does not understand abbreviations. “Dr. Smith arrived.” will be cut after “Dr.” Check results on text that is full of abbreviations, initials or decimal numbers.

Going the other way

To join lines back into one with a separator, use add text to each line and tick the join option; it can also wrap each item in quotes first, which is what you need to turn a list into something you can paste into code or a query. To remove repeats, remove duplicate lines works on the split result, and sort lines puts it in order. If you are splitting to count things, the word frequency counter will do the counting.

If your goal is to cut text at a length rather than a separator, the text truncator does that.

Why a real CSV file needs a different tool

Splitting at commas works for simple lists, but real CSV data has quoted fields that contain commas, such as “Smith, John”,42,London. Cutting that at every comma gives four pieces instead of three, and no setting here can tell which commas are inside quotes. For files like that, open them in a spreadsheet, which understands the quoting, or split on a character that does not appear in the data. The tool is at its best with plain lists: tags, keywords, names separated by semicolons, or values pasted from a form.

Frequently asked questions

How do I split a row copied from a spreadsheet?

Choose Tab. Cells copied from a spreadsheet are separated by tab characters, so splitting at tabs gives one cell per line.

Why did "Dr. Smith" get split into two lines?

The sentence splitter looks for punctuation followed by a space and cannot recognise abbreviations. Use a different separator, or fix those cases by hand afterwards.

Can I split on a line break?

Text is already separated by line breaks. If you want to change them to another separator, use add text to each line with the join option.