Cas reel observe: contacts.name = juste le NOM de famille (DUFOUR, DELCOUR), avec
plusieurs entrees par nom (Antoine vs Jean-Charles DUFOUR par ex). Le match precedent
'%nom%' renvoyait des faux positifs.
Solution:
- Nettoie suffixes parasites: '(externe)', '- PCT', '- DBA' en fin
- Identifie nom de famille = token UPPERCASE longueur >= 3 (DUFOUR, DELCOUR, etc.)
- Prenom = 1er token qui n'est pas le nom
- Match SQL: LOWER(email) LIKE 'prenom.nom@%' insensible casse
- Pas de FROM nom de famille SEUL (qui matcherait des homonymes)
Pour 'Laurent DELCOUR' -> match strict laurent.delcour@%
Pour 'DUFOUR Antoine - PCT' -> nettoye en 'DUFOUR Antoine' -> match antoine.dufour@%