PRPickrack

Find & Replace

Find and replace text with regex + capture groups. Live preview, match count, browser-side.

0 chars
0 chars

Find and replace text with full regex + capture groups. Live preview, match count, browser-side.

Find & Replace is the classic text editing operation — find every occurrence of a pattern and replace it with another string. Pickrack supports plain-text search and full JavaScript regex with capture groups, case-insensitive matching, multiline mode, and global vs single-replace options.

Use it for: data cleaning (trim email addresses, normalize phone numbers), bulk URL updates, CSV transformations, code refactors that don't need a real IDE, removing tracking parameters from URL lists, swapping placeholders in email templates.

Free, no signup, browser-side. Your input never leaves your tab — important when working with private data (customer emails, internal URLs, log files that may contain PII).

Key features

  • Plain or regex searchToggle 'Regex' to treat the find pattern as a JavaScript regular expression. Off = literal string (special chars auto-escaped).
  • Capture groupsIn regex mode use (group) in find + $1 $2 in replace. E.g., (\w+)@example\.com[email protected] rewrites all emails.
  • Live match countSee how many matches will be replaced before you copy the result.
  • Case-sensitive toggleDefault is case-insensitive. Toggle off for exact-case matching.
  • Multiline + globalMultiline mode makes ^ and $ match line boundaries. Global mode replaces all occurrences vs just the first.
  • Browser-side onlyInput and output stay in your tab. No upload, no logging.

How to use

  1. Step 1: Paste your textAnything — a list of emails, a CSV row, a paragraph, a log file.
  2. Step 2: Type Find + Replace patternsPlain text works as-is. For regex, toggle Regex on and use full JS regex syntax.
  3. Step 3: Tune flagsMost cases: case-insensitive ON, Replace all ON. For one-time replacement, turn Replace all OFF.
  4. Step 4: Copy or Swap inCopy result, OR click 'Swap in' to put the output back into the input field for a follow-up replace.

When to use

  • Email domain migration — find @oldcompany.com → replace @newcompany.com across 10,000 records
  • URL normalization — strip ?utm_*= tracking params via regex \?utm[^&]* → empty
  • Phone format(\d{3})-(\d{3})-(\d{4})($1) $2-$3 for US format
  • Code refactor — rename a function across a copied codebase snippet
  • Markdown link cleanup\]\([^)]*\?\w+=[^)]*\) → simpler form
  • Whitespace normalization — find \s+ → replace to collapse multiple spaces

Frequently asked questions

What regex flavor does this use?

JavaScript regex — the same engine browsers use for String.replace(). Supports character classes, quantifiers, lookahead, lookbehind (in modern browsers), Unicode properties (\p{...}). Does NOT support some PCRE features like recursive patterns. Most use cases work identically.

How do I escape special characters in plain mode?

You don't have to — when Regex is OFF, Pickrack auto-escapes all regex special chars. So searching for (test) in plain mode finds the literal text (test), not a capture group.

What's $1 $2 in replace?

Capture group backreferences. In regex mode, parentheses in 'Find' create capture groups. $1 in 'Replace' inserts the first group's match, $2 the second, etc. Up to $9, plus $& for the entire match. Example: find (\w+) (\w+) + replace $2 $1 swaps two words.

Why no preview highlighting?

v1 doesn't highlight matches in-place (would require a code editor component, ~100KB extra). Workaround: read the match count + diff input vs output visually. Highlighted preview is on the roadmap.

How does Multiline mode change behavior?

By default, ^ matches only the start of the entire string and $ only the end. Multiline mode makes them match start/end of each line. Useful for line-based patterns like 'comment out every line starting with TODO': find ^TODO (multiline ON) → replace // TODO.

What's the input size limit?

No hard limit but the browser textarea + regex engine slows down past ~10MB of text. For larger files, use a CLI tool like sed or perl -pe.

Related tools