Drop every line that matches - keep the rest
Remove list items containing a word, phrase, or pattern in one pass. Each line is tested independently against your pattern; matching lines are deleted and everything else is kept in its original order.
Contains (the default) is a substring check - "banana" removes both "banana" and "banana split". Equals removes only lines that match the pattern exactly. Starts with and Ends with check a single end of the line, and Regex treats the pattern as a JavaScript regular expression for anything more precise.
Whole word wraps the pattern in word boundaries for Contains and Equals, so "cat" removes "the cat sat" but not "category". Case sensitive (off by default) controls whether "Apple" matches "apple". Remove matches is on by default; untick it to flip the tool into a keep-only-matches filter - same pattern, opposite outcome.
It all runs as you type. Your list is processed locally in your browser and is never sent to a server.
How to use remove list items containing text
- 1Paste your list into the input panel - one item per line.
- 2Type the text to remove in Remove if. Every line containing it will be dropped.
- 3Pick a Mode if you need more than a substring match: Equals, Starts with, Ends with, or Regex.
- 4Optionally turn on Whole word or Case sensitive to tighten the match.
- 5Untick Remove matches to flip it - keep only matching lines and drop the rest. Copy or Download the result.
Keyboard shortcuts
Drive ListShift without touching the mouse.
What Remove Items Containing does
A delete-by-match filter with five modes, plus a Remove matches toggle you can untick to keep instead.
Strip out unwanted lines by keyword
Contains mode removes any line with your text anywhere inside it. Clear out rows mentioning a discontinued product, a test account, or a banned word in one paste - the surviving lines keep their original order.
Exact, prefix, or suffix removal
Equals drops only lines that match the pattern exactly. Starts with and Ends with target one end - delete every line beginning with "#" (comments) or ending in ".tmp", for example.
Regex for precise rules
Switch Mode to Regex to remove lines by a JavaScript pattern - digits, anchors, character classes, alternation. An invalid pattern clears the output and shows the error in the status bar rather than failing silently.
Whole-word safety
Whole word wraps Contains and Equals patterns in word boundaries, so removing "cat" won't also delete "category" or "concatenate". Ignored in Starts/Ends/Regex modes.
Untick to keep instead
Remove matches is on by default. Untick it and the filter flips: only lines that match survive. Same controls, opposite result - so this tool covers both "remove these" and "keep only these" without switching pages.
Worked example
Contains mode with the pattern "banana" removes every line containing it; the rest pass through in order.
apple banana cherry banana split green apple
apple cherry green apple
Settings reference
One pattern field plus four refinements.
| Setting | What it does | Default |
|---|---|---|
| Remove if | The text or regex a line must match to be removed | banana |
| Mode | Contains, Equals, Starts with, Ends with, or Regex | Contains |
| Remove matches | On by default - drops matching lines. Untick to keep only the matches instead. | On |
| Whole word | Match on word boundaries (Contains / Equals only) | Off |
| Case sensitive | Whether "Apple" matches "apple" | Off |