Clean Text · browser-local

List Compare

Paste two lists and see which items are unique to each, which they share, and the combined set. GlyphSift compares whole lines by exact membership, keeps your original casing and order, and reports a count for every group so nothing is lost or silently merged.

Index state
draft
Reviewed
2026-09-16
Input limit
5,000 graphemes
12 graphemes12 code points12 bytes
List B
Live result

List Compare

Only in A

1 items

apple
Only in B

1 items

cherry
In both

1 items

banana
Union

3 items

apple
banana
cherry

Good fit

Use this tool when

  • You need the difference or overlap between two lists.
  • You want to keep the original text of each line, not a character diff.
  • You are reconciling exports, name lists, or inventories.

Keep the original

Avoid it when

  • You need a character-level diff of two paragraphs.
  • You want fuzzy or partial matching.
  • The comparison should ignore whole-line boundaries.
01

Reviewed truth vectors

Examples that expose the edge cases

InputA: apple, banana
OutputOnly in A: apple

"apple" is not present in list B.

InputB: banana, cherry
OutputOnly in B: cherry / In both: banana

"banana" appears in both lists; "cherry" is unique to B.

Inputapple, banana + banana, cherry
OutputUnion: apple, banana, cherry

The union lists each distinct item once, in first-seen order.

02

Transparent implementation

How it works

  1. 01

    Split both inputs into lines and ignore blank lines.

  2. 02

    Match lines by exact value, optionally case-insensitive, keeping the original text.

  3. 03

    Report four groups — only A, only B, in both, and the union — each with a count.

03

Known limitations

What the result cannot promise

Matching is exact and whole-line; there is no fuzzy matching.

Duplicate lines within one list are collapsed to a single entry.

Leading and trailing spaces are part of the value unless you remove them first.

04

Questions before copying

Frequently asked questions

Does it change my text?

No. It keeps each line's original casing and characters and only sorts items into groups. Turn on case sensitivity to treat "Apple" and "apple" as different.

How are duplicates within one list handled?

Repeated lines inside the same list are counted once. The tool compares set membership, not how many times an item appears.

Is this a character-by-character diff?

No. It compares whole lines as items. For a character-level comparison of two passages, use a dedicated text-compare tool.

05

Experience, expertise & trust

How we verify this tool

GlyphSift Editorial — Text-engine authors & reviewers

The GlyphSift Editorial team designs the deterministic text engine, writes each tool's examples against real Unicode edge cases, and reviews every claim before a page becomes eligible for indexing. We build and test the software we document; we do not outsource the copy to generic content mills.

Each tool page is reviewed against the same six input classes the engine is tested with — ASCII, emoji, combining marks, non-Latin scripts, empty input, and 5,000-grapheme input — and cannot become eligible if it is only a parameter variation of another page.

Automated evidence

  • Tool-contract & coverage suite30 deterministic cases

    tests/tools-30.test.mjs mirrors the ToolRunner dispatch and asserts every registered engineId returns the contracted output shape, plus a coverage guard so no tool silently drops characters.

    Run in: node --test after a production build (vinext build)
  • Rendered-HTML suite12 deterministic cases

    tests/rendered-html.test.mjs renders the deployed server bundle and asserts the Unicode-version manifest and each wave's tool markup are present in the server-rendered HTML.

    Run in: node --test against the built dist/server bundle
  • Transform & cleanup suite21 deterministic cases

    tests/transform-cleanup.test.mjs exercises each deterministic cleanup and transform action against whitespace, duplicate, ordering, casing, and HTML-to-text edge cases.

    Run in: node --test, no network, no randomness

Standards this tool follows