Find & replace

Bulk find-and-replace for any text — literal or regex, case-sensitive optional, with an honest count of what changed.

How it works

Literal mode escapes your search text so special characters match literally. Regex mode compiles your pattern with the global flag and supports capture groups ($1, $2) in the replacement. The change count is the actual number of substitutions performed — zero means nothing matched, so you always know whether the replace did anything.

Frequently asked questions

Why doesn't my regex match newlines?

The dot doesn't cross newlines without the s flag — add s via /pattern/s in regex mode, or use [\s\S] in the pattern.

Can I replace across the whole text at once?

Yes — every match in the text is replaced in one pass, with the count reported.

Written and maintained by Steven Huang · Last reviewed October 29, 2026.