Bulk text substitution with regex support

Find and Replace.

Replace one string with another, or a hundred strings with a hundred others, all in one pass. Regex, case-insensitive, and whole-word options included.

Find / Replace pairs
Input
Result
Ready.

What this tool does

Find and replace is one of the oldest tools in computing. Every text editor has it. Every word processor has it. This online version exists for the times you don't want to open one — when you're cleaning copy on a Chromebook, processing log data on a colleague's laptop, or just don't want to paste sensitive content into an installed app.

The tool runs entirely in your browser. Text you paste never leaves your machine. There's no upload, no server processing, and no logging of inputs.

Three modes that matter

Literal find and replace

The default. Type the string you want to find, the string you want to replace it with, and every occurrence in your input is swapped. Special characters in the find pattern are treated literally — periods are periods, parentheses are parentheses. Use this for straightforward substitutions like changing "color" to "colour" across an article, or replacing every instance of an old product name with a new one.

Regex find and replace

Check the Regex box and the find pattern becomes a JavaScript-flavor regular expression. This unlocks much more powerful patterns: \b\w+@\w+\.\w+\b finds email addresses, \d{4}-\d{2}-\d{2} finds ISO date strings, (\w+)\s+(\w+) captures two adjacent words.

In the replacement field, $1, $2, etc. reference captured groups from the find pattern. So a find pattern of (\w+)\s+(\w+) with a replacement of $2 $1 swaps every pair of adjacent words.

Whole-word matching

The Whole word checkbox wraps your literal pattern in word boundaries so that searching for "cat" doesn't match "category" or "catalog". This is essential when renaming variables in code or scrubbing specific terms from prose.

Multiple patterns at once

The "+ Add another pair" button lets you stack as many find/replace pairs as you need. They're applied in order, top to bottom. This is useful when you're doing a coordinated rename — say, converting US English spellings to British English in a document, where you need to fix "color" → "colour", "organize" → "organise", "center" → "centre", and so on, all at once.

Each row's replacement is computed on the result of all previous rows, so be careful with patterns that might cascade. If row 1 changes "cat" to "dog" and row 2 changes "dog" to "wolf", every original "cat" ends up as "wolf".

Case sensitivity

By default, find is case-insensitive — searching for "Apple" finds "apple", "APPLE", and "Apple". Check the Case-sensitive box for exact-case matching. The replacement string is always inserted exactly as typed; it doesn't try to match the case of what it's replacing.

If you need case-preserving replacement (where "Apple" becomes "Orange" and "apple" becomes "orange" in the same pass), use two separate rows with case-sensitive matching turned on.

Common use cases

  • Cleaning up email signatures from forwarded threads — multiple patterns to strip standard footer lines
  • Renaming variables in code — case-sensitive whole-word matching prevents accidental matches inside other identifiers
  • Standardizing dates — regex like (\d{1,2})/(\d{1,2})/(\d{4}) with replacement $3-$1-$2 converts US dates to ISO format
  • Stripping markdown formatting — patterns like \*\*([^*]+)\*\* with replacement $1 remove bold markers while keeping the text
  • Anonymizing sample data — replace specific names, emails, or IDs with placeholders before sharing
  • Bulk URL updates — change every reference to an old domain to a new one

Why a separate page when most editors have find/replace built in?

A few reasons. First, the multi-pattern feature isn't standard in most editors — running 20 replacements typically means 20 separate operations. Second, this tool's output is non-destructive — your original input stays intact in the left panel, so you can iterate without fear of losing the source. Third, sometimes you just need to clean a snippet of text without opening another app, especially on devices where you don't have your usual editor installed.

If you do this kind of work often, our bulk converter handles whole files (.txt, .md, .csv, .docx) the same way. And if you need other text transformations after the find/replace pass, the tools hub links to the rest of our text utilities.