Skip to content

Free · Private · No sign-up

Replace all dashes — one rule for the whole family

When you do not care which dash is in the text, this is the tool: em dashes, en dashes and hyphens all become the same character, in one pass.

Dash remover tool

Everything happens in your browser. Your text never leaves this page.

This tool replaces
Replace each dash with

Press Ctrl (or ⌘) + Enter to run it again.

Text with one kind of separator

0dashes removed

Every other page on this site is deliberately narrow. This one exists for the opposite situation: text of unknown origin, where you cannot say in advance whether a report, a spreadsheet export or a pasted web page is carrying em dashes, en dashes, hyphens, or all three at once. Rather than checking each family in turn, you pick one replacement and apply it to everything.

That is the right approach whenever the destination is a machine rather than a reader. CMS fields, CSV columns, JSON values, search indexes, SMS gateways, ticket titles and older APIs all have their own idea of which punctuation is acceptable, and the simplest way to satisfy them all is to remove the question: no dash characters remain, only the substitute you chose. Text that has been through this pass is plain ASCII punctuation, which every system in use can store, sort and compare.

What you give up is the distinction the different dashes were carrying. An em dash marks an aside, an en dash marks a range, and a hyphen joins a compound word — after this pass, all three are a space or a comma. For data that is exactly the point; for prose that will be read as prose, the narrower pages preserve more meaning. The tool matches the full character set: the em dash and its horizontal-bar and multi-em look-alikes, the en and figure dashes, and every hyphen variant including the invisible soft hyphen.

Four replacements, four outcomes

The difference between them shows up in the punctuation, so here is each one applied to the same sentence.

Blank space

The default and the most readable. Punctuation becomes a word break: “the plan — risky — was shelved” reads as “the plan risky was shelved”.

Pages 44–48, a 3–0 win — reported late.

Pages 44 48, a 3 0 win reported late.

Comma

For sentence punctuation. An em dash doing the work of a parenthetical comma becomes one, which reads more naturally than a gap in prose.

The report — written in haste — missed it.

The report , written in haste , missed it.

Hyphen

The ASCII-safe middle ground: every dash becomes the one dash that every system accepts, so ranges and compounds stay visually joined.

Pages 44–48, a 3–0 win — reported late.

Pages 44-48, a 3-0 win - reported late.

Nothing

Delete every dash outright. Use it for identifiers and slugs where even a hyphen is unwelcome — and expect “well-known” to become “wellknown”.

well-known, pre–World War II

wellknown, preWorld War II

What “all dashes” actually covers

FamilyCharacters matchedCaught by a plain find-and-replace?
Em Dash— U+2014 · ― U+2015 · ⸺ U+2E3A · ⸻ U+2E3BOnly the first one — and only if you can type it
En Dash– U+2013 · ‒ U+2012The standard character, not the figure dash
Hyphen- U+002D · ‐ U+2010 · ‑ U+2011 · ¬ U+00ADThe ASCII hyphen only — the other three look identical

That last column is the reason a tool like this exists. A manual replace, or a script that searches for “—”, reliably misses the horizontal bar, the figure dash, the Unicode hyphen and the soft hyphen — which between them cause most of the “there is no dash there” mystery reports.

Questions

Does this replace em dashes and en dashes with the same character?
Yes — that is what makes it the “all dashes” tool. Whichever replacement you choose applies to every dash family at once: em dashes, en dashes, hyphens, the horizontal bar, the figure dash, the multi-em dashes and the invisible soft hyphen.
How do I replace all dashes with spaces?
Leave the replacement on Blank space and press the button. The result keeps one space where a dash separated two words, so “the plan — risky as it was — worked” becomes “the plan risky as it was worked” rather than running the words together.
When should I not use this tool?
When the text will be read as prose and the differences matter. Replacing everything with a space flattens ranges (“2018–2022” loses its meaning), asides and compounds alike. If you only need one family changed, the per-dash pages keep the rest of the document intact.
Will it fix text that fails an ASCII check?
Yes. Em dashes, en dashes, curly quotes and other non-ASCII punctuation are the usual causes of “invalid character” errors in imports and older APIs. After this pass the dashes are ASCII; if a curly quote or a non-breaking space is still in the text, the same paste-into-a-clean-field habit will surface it.
Does it change anything else in my text?
No — only dash characters, plus the double spaces that a removal can leave behind (and that behaviour can be seen in the result). Letters, numbers, line breaks, capitalisation and every other punctuation mark are untouched.
Is there a word limit?
None. The cleanup runs in your browser, so a hundred thousand rows behave like a single sentence: no upload, no account, nothing stored. Your text never leaves the page.

Ready to clean your text?

No sign-up, no upload, no word limit. Paste, pick, and copy the result.

Remove dashes now