Text and regular expressions
Find added and removed items between two lists
Tools to use
You want to compare yesterday's list with today's, or planned IDs with those actually created. The important question is membership, not line position. If Text Diff shows many apparent moves, set comparison may better match the task.
Enter one item per line to obtain the union, intersection, left-minus-right, and right-minus-left. You need not memorize mathematical names: label the left side 'planned' and the right side 'actual', then translate each result into the question you are investigating.
Three planned, three actual, yet not the same
alpha
beta
gammagamma
beta
deltaBoth contain three lines, but their members differ. The intersection is beta and gamma; planned-only left-minus-right is alpha; actual-only right-minus-left is delta. Equal totals do not prove that nothing is missing. Membership comparison describes omissions and extras directly, unlike comparing matching row positions.
The union lists each item appearing on either side once: alpha, beta, gamma, delta. Three plus three does not yield six distinct members, because the two shared items are counted only once. This differs from simply concatenating the lists.
Set difference has a direction
Saying 'the difference is alpha' does not tell someone whether it is missing or extra. With planned on the left and actual on the right, left-minus-right identifies potentially missing items and right-minus-left identifies unexpected ones. Reversing the inputs reverses those meanings. Include each input's role and observation time when sharing results.
These are candidates, not automatic diagnoses. Different collection times, date ranges, or filters also create differences. The tool knows only the lists supplied. Before reconciling planned and actual records, make sure their scope and cutoff agree.
Two occurrences still represent one member
alpha
alpha
betaalpha
betaBoth directional differences are empty here. Alpha occurs twice versus once, but the distinct members are identical. This is insufficient for inventories, orders, or event counts where multiplicity matters. Empty set differences do not establish equal quantities.
Order changes likewise do not alter membership: alpha, beta and beta, alpha are the same set. Use Text Diff for procedure order, rankings, or priority rules. The tools differ in their definition of sameness, not simply in how powerful they are.
Blank lines and outer spaces are removed first
This tool trims outer whitespace and excludes empty lines before comparison, so padded alpha matches alpha. That is convenient for pasted lists but inappropriate when those spaces are part of an identifier. For exact original-text comparison, use Text Diff without ignoring whitespace.
It does not universally normalize internal spaces, width variants, or Unicode forms. If visually similar entries remain different, inspect their code points. Lowercasing everything or deleting punctuation without checking the cause can incorrectly merge distinct IDs.
Establish the identity rule before ignoring case
With Alpha on the left and alpha on the right, normal matching treats them as distinct. Ignoring case matches them. This is a comparison option, not automatic discovery of the source system's identity rules. If that system distinguishes case, do not use a case-insensitive result to justify registration or deletion.
The spelling retained in output is not an authoritative canonical ID. Compare against the official identifier list when standardizing spelling. The tool also does not infer pronunciation, abbreviations, synonyms, or person/product identity. Entity resolution is different from comparing lists whose IDs are already aligned.
Cross-check the four results
In the first example, one left-only, two common, and one right-only member make the four-member union. The left's three distinct members split into one exclusive plus two common; the right does likewise. Use distinct-member counts after comparison rules, not raw input-line counts, to check your interpretation.
Report conditions and direction: 'same date range, blank lines and outer spaces removed; alpha planned-only, delta actual-only'. Investigating those items in the source system narrows the work. The tool performs no registration or deletion; determine causes and actions through the relevant operational process.
Equal counts do not imply equal membership
If planned IDs are A, B, C and completed IDs are A, C, D, both counts are three. Counting alone hides missing B and unexpected D. Planned minus actual yields B; actual minus planned yields D. The union is A, B, C, D and intersection A, C. These sets describe membership, not why an operation succeeded or when it ran.
Planned A, A, B and actual A, B are equal as sets. That does not tell you whether A had to run twice. Quantities, requests and payments often depend on multiplicity. Use per-operation identifiers or separately reconcile occurrence counts. A successful deduplicated comparison is not proof that every required occurrence completed.
Also check whether the lists represent the same snapshot. An ID added after the plan was exported may legitimately appear only in actual results; an in-progress export may still lack planned IDs. The tool does not know these timestamps. Keep capture time and scope with the result, separating detection of a difference from deciding that it is an error.