Text Splitter and Line Joiner

Split text at a delimiter or by character count, or join lines.

Inputs stay on your device No sign-up Free to use
How this works

The tool runs in this browser. Your file or text is not uploaded to UseFreeTools. Check this tool's limits for anything it may save on your device.

Privacy details

Split or join the text controls

Showing an example. Edit to see your own.

Paste the text you want to split, or the lines you want to join.

Used by the delimiter mode. The text is treated literally, so | , ; or a tab all work. More than one character is allowed.

Used by the join mode. A comma and a space make a list, a single space makes one paragraph, and an empty value joins the lines with nothing between them.

Only the settings that belong to the chosen mode are read.

Used by the character-count mode. Characters are counted the way you see them, so an emoji counts as one.

Applies to the delimiter and join modes. An empty part holds nothing at all; a part holding only spaces is not empty.

Processed in your browser. Your inputs stay on this device.

How to use Text Splitter and Line Joiner

  1. Paste your text into the Text box.
  2. Choose what should happen: split at a delimiter, split by character count, or join lines.
  3. Set the Delimiter, the chunk size or the Separator for the mode you chose.
  4. The preview updates as you change the mode and its settings. Copy it or download the text file.

Example: Text Splitter and Line Joiner

Split a short field list on a pipe character and keep the empty parts.

You add
Text: red||blue|. What should happen: Split at a delimiter I type. Delimiter: |. Keep empty parts: on.
You get
Four parts in order: red, an empty part, blue, and a final empty part. The summary reports 4 parts and 2 empty parts kept.

Options

Delimiter
Compared as plain text, never as a pattern, so | , ; or a tab all work and a longer delimiter is allowed.
Separator for the joined result
Placed between lines in join mode. A comma and a space make a list, a single space makes one paragraph, and an empty value joins with nothing between them.
Keep empty parts
On by default for the delimiter and join modes. An empty part holds nothing at all; a part holding only spaces is not empty and is never removed.

Supported inputs and limits

Input is capped at 200,000 characters and the result at 20,000 parts. The delimiter is literal text, not a pattern. Character-count splitting needs the browser's text segmentation, so an older browser gets an error rather than a chunk that cuts an emoji in half. Windows and old Mac line endings are read as Unix line endings first. Join mode drops one line break at the very end of the file. The preview table shows the first 50 parts; the download holds all of them.

Where your input is processed

This tool processes your input in this browser. Your text and files are not uploaded to UseFreeTools. Check this tool's limits for anything it may save on your device.

Empty parts are data, not noise

A delimiter at the end of a string leaves an empty final part, and two delimiters in a row leave an empty part between them. In a row of fields, an empty part is a field that exists and holds nothing, while a missing part was never there. Removing empty parts makes those two cases look the same, so leave the option on when the output feeds a spreadsheet or an import script.

Questions about Text Splitter and Line Joiner

Is the delimiter treated as a regular expression?

No. It is compared as plain text, so a pipe or a dot splits on that character itself.

Why is there an empty part at the end of my split?

A delimiter at the end of the text leaves an empty final part, and two in a row leave one in the middle. Turn off Keep empty parts to remove them, but the count changes with it.

How are characters counted in chunk mode?

The way you see them. A joined emoji or an accented letter counts as one, and a chunk never breaks one in half. That needs the browser's text segmentation, so an older browser is asked to use another mode.

What happened to my Windows line endings?

Windows and old Mac line breaks are read as Unix line breaks before work starts, so the output uses single line feeds. Check any file that has to match a strict format.

Why does my joined text lose a blank line?

One line break at the very end of the file is dropped, because it ends the last line rather than separating two. Blank lines inside the file stay while Keep empty parts is on.

Project manager: Tony Hines · Content updated 29 September 2026 · Report a problem