Extracteur d'emails — Sortez contacts, liens et IP de n'importe quel texte
Extracteur d’e-mails et de contacts
Adresses e-mail — 2
- hello@example.com
- sales@wrightkit.com
| E-mails | 2 |
| URL | 2 |
| Numéros de téléphone | 2 |
| Adresses IP | 1 |
| Identifiants de réseaux sociaux | 1 |
| Total d’éléments uniques | 8 |
L’extraction s’exécute entièrement dans votre navigateur : le texte collé ne quitte jamais la page. Les chiffres figurant dans les e-mails et les URL sont exclus de la liste des numéros de téléphone, et les doublons sont regroupés. La recherche par motifs ne sait pas lire le contexte : un numéro de commande à neuf chiffres ressemble exactement à un numéro de téléphone ; vérifiez donc le résultat avant de vous y fier.
Ce Qui Est
Une expression régulière est un petit langage destiné à décrire la forme d'un texte. Elle peut dire « des caractères, puis un arobase, puis un domaine contenant un point » ou « quatre groupes d'un à trois chiffres séparés par des points », et le faire sur un mégaoctet en quelques millisecondes. Ce qu'elle ne peut pas faire, c'est comprendre le sens : une expression régulière ignore si 4155550132 est un téléphone ou un numéro de commande, si example.com répond, ou si la personne a consenti à être contactée. Elle reconnaît des formes, et toute la difficulté de l'extraction se loge précisément dans cet écart entre la forme et le sens. C'est avec les adresses e-mail que cet écart est le plus large. La RFC 5322 définit une adresse comme une partie locale, un arobase et un domaine, et elle autorise une partie locale entre guillemets, des commentaires entre parenthèses, des domaines littéraux sous forme d'adresse IP comme user@[192.168.0.1], et pratiquement n'importe quel caractère dans une chaîne entre guillemets. Valider correctement une adresse revient donc à implémenter une bonne part de cette grammaire, si bien que les outils pratiques passent un compromis : ils ne reconnaissent qu'un sous-ensemble prudent et admettent que quelques adresses valides passent à côté. Le motif utilisé ici ancre la correspondance sur le caractère qui précède la partie locale et exige au moins une étiquette séparée par un point dans le domaine, ce qui capte l'immense majorité des adresses réelles tout en écartant des choses comme un pseudo @utilisateur ou un arobase isolé dans un journal de modifications. L'erreur classique d'un extracteur naïf consiste à avaler la ponctuation finale de la phrase.
Un motif du type « caractères, arobase, caractères, point, caractères » appliqué à « Écrivez-nous à support@exemple.fr. » renvoie gaiement support@exemple.fr. avec le point. Tout le monde qui a écrit un scraper est tombé dessus, et le résultat est une boîte de réception pleine d'adresses terminées par un point, une virgule ou une parenthèse. Le remède est une assertion de limite à la fin, qui refuse d'étendre la correspondance vers un caractère de mot ou un point, plus un passage de nettoyage pour les URL, où une parenthèse fermante peut être légitime alors qu'un point de fin de phrase ne l'est jamais. Les numéros de téléphone sont plus difficiles, et une étape est contre-intuitive : les chiffres situés à l'intérieur d'un e-mail ou d'une URL doivent être masqués avant de chercher des numéros. Prenons support+ventes42@entreprise.fr ou https://exemple.fr/facture/20240115 : les deux contiennent des suites de chiffres que tout motif de téléphone raisonnable accepte. La parade consiste à remplacer ces zones par des espaces de même longueur avant de lancer le motif, ce qui préserve la position de tous les autres caractères et ne perturbe donc pas les correspondances ailleurs dans le texte. Reste que les faux positifs sont incurables.
Un numéro de commande à neuf chiffres, un identifiant client, un horodatage comme 20240115120000 ou un code produit du type A12345678901 ont tous la silhouette d'un téléphone sans en être un. Une expression régulière ne peut pas lire les mots environnants pour trancher, et c'est pourquoi le résultat est un point de départ à vérifier et non une liste définitive. Les formats internationaux aggravent le tableau : indicatif avec signe plus, numéro national dont le zéro initial doit être conservé, séparateurs points, espaces, tirets ou parenthèses, et extensions. Le compromis utilisable consiste à compter les chiffres et à ne garder que les correspondances de 7 à 15 chiffres, intervalle qui couvre du numéro national le plus court au numéro E.164 le plus long tout en écartant les petits nombres isolés et les identifiants longs. Les adresses IPv4 forment la seule catégorie réellement validable, car leur forme est fixe : quatre octets décimaux séparés par des points, chacun entre 0 et 255, sans zéro initial dans la spécification actuelle. Le motif correspond octet par octet au lieu de chercher des chiffres libres, si bien que 999.1.1.1 et 192.168.01.1 sont correctement rejetés, et les assertions de bord empêchent d'arracher un fragment à une version du type 1.2.3.4.5 ou à une adresse IPv6. Les pseudos sociaux sont plus simples encore, mais ils exigent un regard négatif sur @ et # afin qu'une adresse e-mail ne produise jamais un pseudo tiré de sa propre partie locale. Comme rien de tout cela ne devrait exiger l'envoi de ton texte à un serveur, tout ici est du JavaScript exécuté dans la page : pas d'envoi, pas de file d'attente, pas de compte. Le prix de ce choix, c'est que le travail est borné par la taille de texte qu'un navigateur peut héberger sans peine.
Comment utiliser
- Colle ou tape ton texte dans la grande zone de saisie en haut de la carte. Un paragraphe d'exemple est déjà fourni avec des e-mails, des liens, des téléphones, une IP et un pseudo, pour voir le rendu avant d'utiliser tes propres données.
- Observe les cinq boutons de catégorie sous la zone de texte : Emails, URLs, Phone numbers, IP addresses et Social handles. Chacun affiche un compteur entre parenthèses mis à jour à mesure que tu écris, ce qui fait des onglets un contrôle rapide pour vérifier que le texte est bien collé en entier.
- Ouvre l'onglet Emails pour voir toutes les adresses trouvées. Les doublons sont regroupés, donc une valeur citée dix fois n'apparaît qu'une fois, et le titre sous les onglets rappelle le total de cette catégorie.
- Passe aux onglets URLs, Phone numbers, IP addresses ou Social handles de la même façon. Chaque onglet affiche soit la liste sans doublons, soit le message indiquant que rien de ce type n'a été trouvé, ce qui distingue vite « il n'y en a pas » d'un « le texte n'a pas le bon format ».
- Lis le tableau de totaux au pied de la carte : il récapitule les cinq catégories avec leur nombre et une ligne en gras Total unique items, le chiffre à citer dans un compte rendu.
- Sélectionne une valeur dans la liste et copie-la directement, ou colle le texte dans une colonne de tableur pour le traitement. Comme rien ne quitte la page, tu peux travailler sereinement avec des données de contact réelles.
Exemples
Entrée: Reach the team at hello@example.com or ping sales@wrightkit.com for pricing.
Processus:
Le motif d'e-mail s'applique, un domaine avec point est exigé, les doublons sont regroupés et l'assertion de bord refuse le point finalRésultat: E-mails (2) : hello@example.com, sales@wrightkit.com
Entrée: Docs: https://wrightkit.com/guides and http://example.org/docs?page=2 — office line +1 (415) 555-0132.
Processus:
Les URL s'arrêtent avant le tiret cadratin, le point de fin de phrase est nettoyé, puis les chiffres des liens sont masqués avant la recherche de téléphonesRésultat: URLs (2) : https://wrightkit.com/guides, http://example.org/docs?page=2 | Téléphones (1) : +1 (415) 555-0132
Entrée: Server 192.168.1.10 handles uploads. Order 4155550132 shipped. Follow @wrightkit.
Processus:
L'IPv4 est validée octet par octet, le numéro de commande à 9 chiffres tombe dans la plage de 7 à 15 et est conservé, le pseudo est détecté via le regard négatif sur @Résultat: IP (1) : 192.168.1.10 | Téléphones (1) : 4155550132 (à vérifier, peut être un n° de commande) | Pseudos (1) : @wrightkit
Entrée: Une réponse de 300 mots contenant deux fois hello@example.com et l'IP invalide 10.0.0.256.
Processus:
Les correspondances identiques fusionnent sur une ligne et l'octet IPv4 hors limites échoue à la validation, donc rien n'est listéRésultat: E-mails (1) : hello@example.com | IP (0) : 10.0.0.256 rejetée, un octet dépasse 255
Recherches Connexes
Les gens recherchent aussi : extracteur d'emails, extraire des emails d'un texte, trouver des emails dans un texte, chercher des adresses mail, extracteur de téléphone, extraire des numéros de téléphone.
extracteur d'emailsextraire des emails d'un textetrouver des emails dans un textechercher des adresses mailextracteur de téléphoneextraire des numéros de téléphoneextracteur d'urlsextraire des liensextracteur d'adresses iptrouver une ip dans un textetrouver des pseudosexpression régulière extractionextraire des coordonnéesnettoyer des données texteoutil texte en ligneanalyseur de texte gratuitenrichir une liste de contactstraitement de texte navigateur
Questions Fréquemment Posées
Cet outil va-t-il trouver toutes les adresses e-mail de mon texte ?
Aucun extracteur ne peut le promettre, et la raison honnête est la forme de la grammaire des adresses, pas un bogue. La RFC 5322 autorise une partie locale entre guillemets, des domaines IP entre crochets et une syntaxe de commentaires ; un motif qui reconnaîtrait tout cela reconnaîtraient aussi beaucoup de sottises. Cet outil cible le sous-ensemble prudent qui correspond à la réalité et laisse volontairement passer les formes rares. Si vous maîtrisez les données, les exporter depuis le système source est nettement plus fiable que d'analyser du texte.
Pourquoi les chiffres contenus dans les e-mails et les URL n'apparaissent-ils pas comme téléphones ?
Parce que ces zones sont remplacées par des espaces de longueur identique avant l'exécution du motif de téléphone : leurs chiffres n'atteignent jamais le détecteur, tandis que les autres caractères conservent leur place. Sans cette étape, une adresse comme support+ventes42@entreprise.fr ou un lien de facture se terminant par 20240115 produiraient de faux numéros, car toute suite de chiffres dans la bonne plage ressemble à un numéro. La même logique de masquage écarte de la liste les numéros de version et les codes de référence.
Pourquoi mon numéro de commande à neuf chiffres est-il listé comme téléphone ?
Parce qu'une correspondance regarde des formes, pas du sens. Un numéro de commande à neuf chiffres et un mobile à neuf chiffres sont la même chaîne pour une expression régulière, et les distinguer demanderait de comprendre les mots qui les entourent, ce que les motifs ne savent pas faire. L'extracteur conserve entre 7 et 15 chiffres afin de rester utile pour les formats nationaux et internationaux, ce qui inclut volontairement la plupart des numéros de commande. Relisez la liste des téléphones avec le contexte de la phrase avant de l'utiliser, ou découpez le texte pour que les identifiants ne cohabitent pas avec les coordonnées.
Quels formats de téléphone l'onglet reconnaît-il ?
Il couvre les formes les plus fréquentes dans du texte réel : indicatif international facultatif avec signe plus, indicatif régional facultatif entre parenthèses, et groupes de chiffres séparés par des espaces, des points ou des tirets. Les correspondances sont ensuite filtrées par nombre de chiffres, en gardant de 7 à 15, si bien que les numéros nationaux courts et les numéros internationaux longs subsistent tandis que les petits nombres isolés disparaissent. Les formats à séparateurs inhabituels ou dont le pays est écrit en toutes lettres ne sont pas reconnus, pas plus que les numéros coupés en plein milieu d'un groupe par un saut de ligne.
Gère-t-il les adresses IPv4 sans produire de faux résultats IPv6 ?
La correspondance IPv4 est stricte, ce qui est possible parce que le format est fixe : quatre octets décimaux entre 0 et 255 séparés par des points. Toute valeur au-dessus de 255, ou un nombre d'octets incorrect, est rejetée, si bien que 999.1.1.1 est ignoré. Les assertions de bord empêchent aussi le motif d'arracher un fragment d'une chaîne à points plus longue, comme un numéro de version, ce qui est la source habituelle de fausses IP. Les adresses IPv6 ne sont pas reconnues du tout et n'apparaissent que dans l'onglet des URLs lorsqu'elles font partie d'un lien.
Le texte que je colle est-il envoyé sur un serveur ?
Non. Les motifs s'exécutent en JavaScript dans l'onglet de votre navigateur : le texte est lu depuis la zone de saisie et n'est jamais transmis, journalisé ni stocké. C'est précisément important pour l'entrée visée par cet outil, puisque le texte collé est souvent un fil de support ou une fiche client saturée de données personnelles. La seule conséquence pratique du fonctionnement côté client est que les très grandes entrées sont limitées par ce qu'une page peut héberger confortablement, et non par un aller-retour réseau.
Peut-on aussi extraire les pseudos de réseaux sociaux ?
Oui, l'onglet Social handles rassemble les valeurs commençant par un arobase suivi d'une lettre et de trente caractères alphanumériques ou de tirets bas au maximum, ce qui couvre les règles de nommage des grands réseaux. Un regard négatif empêche l'arobase en début d'adresse e-mail de fabriquer un pseudo à partir de sa partie locale, et les doublons sont regroupés comme dans les autres catégories. Gardez en tête qu'un pseudo n'est qu'un pseudo : il ne dit pas sur quel réseau se trouve le compte, et n'importe qui peut le revendiquer.