\b\w+\b — match whole words
(\w+)\s+\1 — find repeated words
^\s+ — match leading whitespace on each line
Find and replace text instantly online. Supports plain text and regular expressions with case-insensitive matching. Shows replacement count. Free — runs entirely in your browser.
Input Text
Result
Markdown → HTML
Convert Markdown to clean HTML instantly. Supports GFM, tables, code blocks, and more.
Case Converter
Convert text to camelCase, PascalCase, snake_case, kebab-case, and more — all at once.
HTML → Markdown
Convert HTML to clean Markdown instantly. Supports headings, links, lists, tables, and code blocks.
Find and replace is one of the most fundamental text manipulation operations: locate all occurrences of a pattern in a text and substitute each with a replacement string. In plain text mode, the find pattern is treated as a literal string and matched case-sensitively (or case-insensitively with a flag). In regex mode, the find pattern is interpreted as a JavaScript regular expression, enabling pattern-based matching with groups, quantifiers, and character classes.
Regular expression replacement unlocks powerful text transformation capabilities. Capture groups in the find pattern (parenthesized subexpressions) can be referenced in the replacement string using $1, $2, etc. This enables reordering fields (date format conversion: 2026-05-12 → 12/05/2026), extracting and reformatting structured text, renaming variables across a file, and applying complex substitutions that would require a custom script in other tools.
This tool performs find and replace in the browser using JavaScript's String.prototype.replaceAll() for literal mode and new RegExp(pattern, flags) for regex mode. It applies the replacement globally (all occurrences) and displays the replacement count alongside the output. The regex mode supports the global flag implicitly, enabling batch replacement across the entire input text without per-occurrence confirmation.
Reformatting dates and structured data fields
Data exports from different systems use different date formats: ISO 8601 (2026-05-12), US format (05/12/2026), European format (12.05.2026). Converting between formats with regex — find '(\d{4})-(\d{2})-(\d{2})' replace '$2/$3/$1' — reformats an entire dataset in seconds. The same approach works for phone number normalization, postal code reformatting, and any field with a predictable structure.
Renaming variables and identifiers in code snippets
When adapting code examples from documentation, renaming variable names, function names, or string constants throughout a snippet is repetitive work. Find and replace with the word-boundary regex \bOldName\b ensures exact identifier matches rather than substring matches that would corrupt 'OldNameExtended'. This is particularly useful when an IDE is not available and the change needs to be made in a text editor or web form.
Filling templates with batch substitutions
Email templates, contract clauses, and documentation boilerplate contain placeholder tokens like {{CLIENT_NAME}}, {{DATE}}, or [COMPANY]. Pasting a template and running find and replace for each token produces a customized output quickly, without needing access to a mail merge system or a templating engine. Multiple sequential passes for different tokens produce fully personalized text from a generic template.
Enable Regex to use JavaScript regular expression patterns in the Find field. Back-references like $1 work in the Replace field.
\b\w+\b — match whole words
(\w+)\s+\1 — find repeated words
^\s+ — match leading whitespace on each line