Passer au contenu principal

RegEx

Abréviations regex y expression régulière désignent des expressions régulières utilisées dans le calcul théorique, la programmation, le développement de logiciels, le traitement de texte et l'optimisation des moteurs de recherche. Les expressions régulières peuvent être utilisées pour décrire des chaînes et des numéros de chaîne d'une manière logique générale afin de les rechercher, de les remplacer, de les manipuler ou de les traiter dans des documents, du code source ou une base de données.

Exemple: dans un éditeur de texte compatible regex, tous les liens contenus dans un fichier HTML sont supposés être affichés. Si l'expression [^ »] *» [^>] *> est saisie dans la fonction de recherche de l'éditeur, tous les liens qui ont le format de lien HTML habituel seront affichés. Le terme [. * Effectue la même tâche.]

Informations générales

Le logicien et mathématicien Stephen Kleene est considéré comme le fondateur de regex. En 1956, il a utilisé des annotations de quantités régulières dans un essai sur la représentation des événements dans les réseaux de neurones et les automates finis. Ces travaux et d'autres sont aujourd'hui des principes fondamentaux fondamentaux de l'informatique théorique. Les expressions régulières sont désormais utilisées dans divers domaines pour simplifier les opérations, qui autrement seraient laborieuses et chronophages.

Regex Il peut être utilisé en fonction de son implémentation dans divers langages de programmation, environnements et éditeurs de texte, par exemple en Perl, PHP, .NET ou JavaScript en tant qu'éléments dans une bibliothèque[1]. Ou dans EditPad, Emacs et Notepad ++ en tant que fonction de recherche et de remplacement dans les éditeurs de texte. Dans le moteur de recherche Google Analytics, les expressions régulières sont également utilisées pour filtrer les sources de trafic, définir des segments et séparer les données détaillées du rapport des autres données.

Fonctionnalité

Les utilisations de regex ils sont extrêmement multiples. Les expressions régulières possibles dépendent de la notation. Il existe différentes notations dans différents langages de programmation. Ces annotations sont appelées nom de modèle de shell, BRE (Basic Regular Expressions) et ERE (Extended Regular Expressions). Les différences sont parfois dues au fait que des caractères individuels et principalement des métacaractères (caractères de contrôle) sont utilisés dans un langage de programmation.

igraal_fr-fr

Généralement, les caractères (terminaux) et les métacaractères sont distingués. Les caractères sont enregistrés dans le jeu de caractères (l'alphabet) qui contient, par exemple, des chiffres, des lettres et des virgules. Les métacaractères sont des opérations spécifiées comme bascule |, relation () et répétées avec *, + et ?. Avec ^ les montants peuvent être annulés. Les métacaractères sont des instructions destinées au logiciel de traitement. Les caractères normaux peuvent être devant ou derrière les métacaractères, leur signification formelle sera différente. La plupart des implémentations fonctionnent avec un moteur spécial pour regex qui analyse et interprète les expressions régulières répertoriées et vérifie les ressources pour les instances.

  • Caractère régulier: Tous les nombres de 0 à 9. Toutes les lettres d'un alphabet et certains caractères spéciaux (virgules, tirets, points-virgules). Important: l'alphabet dépend du jeu de caractères utilisé (par exemple, Unicode ou ASCII).
  • Classes de caractères: c'est, par exemple, un nombre de 1 à 9. Alors qu'il trouverait tous les onglets. Les autres options sont l pour les minuscules, s pour tous les espaces ou u pour toutes les lettres majuscules.
  • Métacaractères:
 [] () {} | ? + - * ^ $  

Avec une barre oblique inverse placée avant, un métacaractère peut être annulé.

Importance pratique

Les méthodes suivantes peuvent être implémentées avec des expressions régulières:

  • Correspondance de motif: Grâce à l'utilisation d'un algorithme de correspondance de chaînes, les textes peuvent être vérifiés pour les modèles. Dans ce cas, une expression régulière représente une collection de chaînes avec leurs occurrences réconciliées dans le texte. L'expression regex spécifie le modèle, le moteur vérifie le modèle par rapport à une ressource (par exemple, un document HTML ou du texte). Dans certaines circonstances, une règle de remplacement peut être spécifiée pour modifier directement les chaînes trouvées. Les quantificateurs peuvent être utilisés pour affiner les résultats. Exemples: vérifier l'exactitude formelle d'une adresse e-mail saisie ou rechercher des domaines de premier niveau dans une liste d'URL.
  • Globbing: Les noms de fichiers sont ajoutés aux espaces réservés pour choisir tous les fichiers dans un format particulier, par exemple. Le caractère générique "sample. *" Trouverait tous les fichiers dans un système de gestion de fichiers commençant par "sample", mais dont les formats de fichier sont différents comme .txt. o.doc. L'astérisque représente la variété des formats de fichiers. Le globbing est également utilisé dans les attaques par déni de service où les serveurs sont intentionnellement surchargés.[2]
  • Troncature: Dans les recherches de base de données, les termes de recherche sont souvent abrégés ou tronqués à l'aide de caractères génériques. Le terme «échantillon *» trouvera tous les termes commençant par exemple et se terminant par d'autres lettres, comme exemple de correspondance, exemple de test ou exemple d'exemple. Par troncature, l'espace de recherche est agrandi. Exemple: Dans une recherche de bibliothèque, toutes les entrées contenant une définition de recherche spécifique peuvent être trouvées.
  • Tige: Lors du freinage, différentes variantes morphologiques d'un mot sont attribuées au mot radical. Les négations et conjugaisons des mots peuvent ainsi être réduites à leur racine ou racine linguistique. Cette méthode est utilisée dans la recherche d'informations (par exemple, via les moteurs de recherche) et dans le calcul théorique. Exemple: Google utilise probablement une procédure similaire dans le cadre de la recherche organique[3].

Importance pour l'optimisation des moteurs de recherche

Regex peut être très utile pour certains emplois dans le domaine de l'optimisation des moteurs de recherche[4] . Les outils de surveillance et d'analyse tels que Google Analytics ont une application pour regex.[5]

Dans le moteur de recherche Google Analytics, des expressions régulières sont utilisées pour déterminer des filtres pour les adresses IP. Des filtres individuels peuvent être définis dans les paramètres de profil en excluant les adresses IP d'un ou plusieurs visiteurs. De cette façon, le trafic provenant d'une plage d'adresses IP ne sera pas inclus dans les rapports. Ceci est utile si vous souhaitez exclure les visites non pertinentes des statistiques de visites, telles que vos propres employés.

De plus, différents segments peuvent être traités dans le moteur de recherche Google Analytics en utilisant regex. Par exemple, les recherches contenant un nom de marque peuvent être exclues. A cet effet, un segment serait défini, qui n'inclurait que le trafic organique et non le nom de marque préalablement défini à l'aide de regex: "[Mm] exemple de société" pour les orthographes avec majuscules et minuscules. De plus, différents types de mots-clés peuvent être exclus pour connaître le trafic généré par deux ou trois mots-clés spécifiques. Il en va de même pour le trafic provenant d'autres sources telles que les newsletters, les e-mails et les associations de liens provenant de sites Web externes.

Une telle tactique peut être utile pour surveiller les canaux de médias sociaux. Une police serait définie pour ce cas en spécifiant les polices possibles avec l'expression régulière. Par exemple, «facebook | twitter | youtube | LinkedIn». Google Analytics n'est pas le seul à proposer une série d'alternatives exploitables avec des expressions régulières[6]. Les blogs et les environnements de serveur peuvent également interpréter et traiter regex. Ainsi, les sites Web peuvent être redirigés et étiquetés comme canoniques au moyen de certains modèles décrits par regex.[7]

Liens web

Erreur: Attention: Contenu protégé.