2009-06-23 6 views
1

J'ai un fichier CSV rempli d'informations de contact et j'essaie de le charger dans les contacts GMail, mais les adresses e-mail ne sont pas toutes correctement formatées donc GMail ne le reconnaît pas comme un champ e-mail. Je peux ouvrir le fichier CSV dans Excel (Mac) mais je ne sais pas s'il existe un moyen de faire correspondre les modèles dans Excel. En outre, certains des champs peuvent contenir des virgules (telles que des champs d'adresse) et l'utilisation de sed/awk pourrait être difficile. Est-il possible de trouver rapidement les adresses e-mail incorrectement formatées?Recherche d'adresses e-mail au format incorrect dans un fichier CSV

+0

Pouvez-vous élaborer sur «incorrectement formaté». En fait, peu de lignes nettoyées aideraient. – nik

+0

Eh bien, certains d'entre eux ont des notes entre parenthèses après et l'occasionnel est écrit comme "nom d'utilisateur [at] site dot com" ou similaire – benwad

Répondre

1

vider les adresses dans un fichier texte puis exécutez le fichier via findstr (comme les fenêtres en construction commande cmd) et obtenir l'écho des modèles correspondants:

par exemple:

findstr /V "\b[A-Z0-9._%+-][email protected][A-Z0-9.-]+\.[A-Z]{2,4}\b" input_emails.txt > bad_emails.txt 
+0

ne devrait pas options/I et/R être présent aussi? –

+0

erm .. possiblement. Gauche comme un exercice pour l'affiche. – gbjbaanb

1

digdb est un plugin Excel pour valider les adresses email qui pourraient vous être utiles. Ce n'est pas gratuit mais il y a une démo gratuite limitée dans le temps que vous pourriez au moins utiliser pour voir si elle fait ce que vous voulez. Je ne l'ai pas essayé moi-même, mais il est apparu dans ma recherche google quand j'essayais de trouver celui que j'ai utilisé depuis longtemps (et ne peut plus trouver)

1

Ouvrez votre fichier CSV avec un regex-capable éditeur de texte, comme TextWrangler (puisque vous êtes sur Mac, gratuit). Ensuite, lancez une recherche regex, et corrigez manuellement les résultats trouvés, car les problèmes éventuels peuvent être vraiment tordus. C'est plus simple si la colonne email vient en premier.

En supposant l'adresse e-mail vient en premier et ne sont pas entre guillemets:

^(?![A-Z0-9\._%\+\-][email protected][A-Z0-9.-]{2,}\.[A-Z]{2,4},) 

Note:

  • à l'aide d'anticipation négative ici pour trouver des correspondances incorrectes, espérons que votre éditeur supporte (pas mon mac maintenant)
  • si tous les adresses e-mail ont des citations, ajouter une citation "après premier! et avant dernier,
Questions connexes