What's unique to each list, and what both share
List A ('alpha, beta, gamma') and List B ('beta, delta, gamma') share 'beta' and 'gamma' as common lines. 'alpha' appears only in A, and 'delta' appears only in B -- a clean three-way breakdown of exactly how the two lists relate.
This is a set-based comparison, not a positional one -- 'gamma' is recognized as common even though it sits in a different position within each list (third in both here, but the tool doesn't rely on position at all), which matters for comparing lists where item order isn't meaningful, like tag lists or category lists.
Trimmed exact-line matching means each line is compared as a whole, after trimming leading/trailing whitespace -- 'beta' and 'beta ' (with a trailing space) would be treated as the same line, but 'beta' and 'Beta' (different capitalization) would be treated as genuinely different lines.
Why this isn't a character-level diff
Trimmed exact-line match. It is not a character-level diff. A line that's 95% identical between the two lists but differs by one character (a typo, an extra word) is treated as completely different -- it would show up as 'only in A' and a separate, different 'only in B' entry, rather than being recognized as a near-match with a highlighted small difference.
For comparing whether two versions of a document have small wording changes within otherwise-similar sentences, a character- or word-level diff tool would show that more usefully than this line-based common/unique breakdown, which treats each line as an atomic, all-or-nothing unit.
This is well-suited for exactly the kind of list-comparison problem it's built for -- checking a subscriber list against another, comparing category tags, reconciling two versions of a simple itemized list -- where each line is meant to be a distinct, complete item rather than part of a longer flowing text.
Related comparison and list tools
For finer-grained character or word-level differences between two blocks of text rather than a line-based set comparison, the String Diff Inspector is a related but differently-scoped tool.
Once you know which lines are unique or common, the Alphabetical Line Sorter can help organize the resulting lists.
Frequently Asked Questions (FAQ)
Does line order matter for this comparison?
No. This is a set-based comparison -- 'gamma' is correctly identified as common to both lists regardless of what position it appears in within each list. Only which distinct lines exist in each list is checked, not their ordering.
Would 'beta' and 'beta ' (with a trailing space) be treated as the same line?
Trimmed exact-line match. It is not a character-level diff. Yes -- leading and trailing whitespace is trimmed before comparison, so a trailing space alone wouldn't cause two otherwise-identical lines to be treated as different.
Would 'beta' and 'Beta' (different capitalization) count as the same line?
No. This is an exact-match comparison after trimming whitespace only -- it doesn't normalize capitalization, so differently-capitalized versions of the same word are treated as genuinely different lines.
Does this show partial similarity between two lines that are almost, but not exactly, the same?
No. Trimmed exact-line match. It is not a character-level diff. A line that differs by even one character from its closest counterpart in the other list is treated as completely unique to its list, not as a near-match -- for that kind of granular comparison, a character-level diff tool is more appropriate.
What's this tool best suited for?
Comparing simple itemized lists where each line is a distinct, complete item -- subscriber lists, tag lists, category lists -- rather than comparing flowing paragraphs of text where wording differences within a sentence matter more than whole-line presence or absence.