Trim spaces, drop blank lines, remove duplicates and sort, in the order you choose. Each step shows how many lines it changed, so you can see exactly what happened to your data.
"Priority" customerÉmile Laurentliam.brown@example.comNoah PatelOrder file1.pdfOrder file2.pdfOrder file10.pdfPriya Shahpriyashah@example.comZoë Ahmed
A plain sort compares character codes: capitals before lower case, digits one at a time, accented letters at the very end. A natural sort reads numbers as numbers and ignores case, which is what people expect. The same eight lines, three ways.
Text copied from web pages, PDFs and Word carries characters you can't see. They stop duplicates matching and break formulas. This scan shows what's hiding in the input above; the "Fix invisible characters" step replaces them.
Unicode often has more than one way to write the same thing. “é” can be one code point, or an “e” followed by a combining accent. “fi” can be a single ligature character. Normalisation picks one form, so text compares and searches correctly. Type or paste anything to see every code point, and what each of the four Unicode normal forms does to it. All of it is computed by your browser's String.prototype.normalize.
The usual suspects when two lines look the same but won't match, or text behaves oddly after a copy and paste. The last column checks your browser's \s regex and trim(), which don't catch all of them.
Neighbouring tools, with a typical result for each.