La fonction REGEXTRACT Google Sheets est un composant Séquence REGEX accessible à de nombreux utilisateurs.
Cette fonction est très pratique lorsque vous essayez d’extraire une chaîne spécifique qui fait partie d’une plus grande.
La seule exigence pour utiliser cette fonctionnalité est une solide compréhension des expressions régulières.
Dans ce didacticiel, nous aborderons en détail la fonction REGEXEXTRACT, ainsi que des exemples de la manière dont vous pouvez les utiliser pour certaines tâches courantes de feuille de calcul.
Que fait la fonction REGEXEXTRACT ?
La fonction REGEXEXTRACT utilise principalement des expressions régulières pour extraire les sous-chaînes correspondantes d’une chaîne. Il prend une chaîne et une expression régulière et renvoie la partie de la chaîne qui correspond au modèle dans l’expression régulière.
Syntaxe de la fonction REGEXEXTRACT
La syntaxe de la fonction REGEXEXTRACT est la suivante :
REGEXEXTRACT(text, reg_exp)
Ici,
- texte est le texte ou la chaîne dont vous voulez extraire la sous-chaîne
- exp_reg est une expression régulière. La clause correspond à la partie texte que vous voulez ramasser. Le paramètre de l’expression régulière doit être indiqué entre guillemets.
entrée: La fonction renvoie toujours la première partie texte qui correspond au modèle exp_reg.
Applications de la fonction REGEXEXTRACT
La fonction REGEXEXTRACT peut être très utile lorsque vous souhaitez extraire des informations précieuses d’un ensemble de chaînes qui ne sont pas tout à fait “homogènes” ou uniformes.
Voici quelques applications utiles de la fonction REGEXEXTRACT. Tu peux l’utiliser:
- Extraire le premier ou le dernier caractère d’une chaîne
- Extraire les nombres de la chaîne
- Décoder des mots entiers en fonction de la correspondance partielle
- Extraire un de la liste de mots
- Extraire le contenu entre des caractères spécifiques
- Extraire les différentes parties de l’URL
- Extraire les différentes parties des adresses e-mail
Voyons comment REGEXREPLACE peut être utilisé dans toutes les applications ci-dessus.
Utilisation de la fonction REGEXEXTRACT pour extraire les premiers ou derniers caractères d’une chaîne
Voyons d’abord comment vous pouvez utiliser REGEXREPLACE pour extraire les premiers ou derniers caractères ou mots d’une chaîne.
Supposons que vous ayez la liste suivante de titres de livres dans la colonne A :
Si vous souhaitez extraire uniquement le premier, disons 3 caractères de chaque cellule, vous pouvez utiliser le symbole de point unique (.). Un point dans une expression régulière est utilisé pour représenter un caractère. Donc si vous voulez extraire 3 caractères d’une chaîne, vous devez passer 3 points au paramètre d’expression régulière comme ceci :
=REGEXEXTRACT(A2,"...")
Voici le résultat que vous obtenez :
De même, si vous voulez démonter prendre 3 caractères de chaque cellule, vous pouvez utiliser 3 points suivis du métacaractère $ car le symbole dollar représente la fin de la chaîne.
Donc ta formule serait :
=REGEXEXTRACT(A2,"...$")
Voici le résultat que vous obtenez :
Le symbole du point représente n’importe quel caractère, y compris un espace ou tout autre symbole. Donc en utilisant “.+” dans une expression régulière extrait simplement le texte entier de la cellule.
Si vous voulez vous assurer de ne sélectionner que des caractères alphanumériques, vous pouvez utiliser le symbole du point à la place \w caractère générique représentant un seul caractère alphanumérique (chiffre, lettre ou trait de soulignement).
Donc, si vous voulez décharger Taille le premier mot, vous devez utiliser une combinaison “\w+”. Cela garantit que tous les caractères avant le premier espace sont extraits comme suit :
=REGEXEXTRACT(A2,"\w+")
De même, pour extraire le dernier mot, la formule serait :
=REGEXEXTRACT(A2,"\w+$")
Voici le résultat que vous obtenez :
Utilisation de la fonction REGEXEXTRACT pour extraire des nombres d’une chaîne
La \ré le caractère générique représente un nombre numérique. Ainsi, si vous souhaitez extraire le premier nombre d’une chaîne, vous pouvez utiliser une expression “\d+” comme suit:
=REGEXEXTRACT(A2,"\d+")
Dans la liste de chaînes suivante, vous obtenez les résultats suivants :
Utilisation de la fonction REGEXEXTRACT pour extraire des mots entiers en fonction de correspondances partielles
Supposons que vous ayez la liste de chaînes suivante et que vous souhaitiez extraire tous les numéros de plaque d’immatriculation commençant par des symboles ‘L-‘ :
Vous pouvez ensuite utiliser le modèle de chaîne requis suivi de “\w+” comme suit :
=REGEXEXTRACT(A2,"L-\w+")
Cela vous donnera le résultat suivant :
Ce type d’expression régulière peut également être utilisé si vous souhaitez extraire des mots qui suivent un certain modèle, par exemple supposons que vous ayez la liste de phrases suivante :
Si vous souhaitez extraire le premier mot de chaque chaîne commençant parBo‘ et se termine par un ‘ré‘ alors vous pouvez utiliser REGEXEXTRACT comme suit :
=REGEXEXTRACT(A2,"bo\w+d")
Cela vous donnera le résultat suivant :
Notez que dans le dernier exemple, la fonction n’a fait que compresser première un mot dans une chaîne qui suivait le modèle “bo…d”. Si vous voulez le démonter à la place prendre mot, vous devez ajouter le joker dollar ($) à la fin :
=REGEXEXTRACT(A2,"bo\w+d$")
Cela vous donnera le résultat suivant :
Utilisation de la fonction REGEXEXTRACT pour extraire une seule liste de mots
caractère générique ‘|’ représente et Ou opération. Ainsi, si vous souhaitez extraire un seul mot d’une liste de mots ou de caractères, vous pouvez utiliser ce caractère dans la fonction REGEXMATCH.
Par exemple, supposons que vous disposiez de la liste de chaînes suivante :
Si vous souhaitez extraire la première occurrence d’un mot rouge, bleu, vert ou jaune dans la cellule A2, vous pouvez utiliser la fonction REGEXEXTRACT comme suit :
=REGEXEXTRACT(A2,"red|blue|green|yellow")
Cela vous donnera le résultat suivant :
Utilisation de la fonction REGEXEXTRACT pour extraire le contenu entre des caractères spécifiques
Une utilisation courante de la fonction REGEXREPLACE consiste à extraire le contenu entre certains caractères. Par exemple, supposons que vous ayez copié du texte de balisage d’un site Web et que vous deviez en extraire uniquement la partie texte en supprimant les balises HTML :
Maintenant, vous pourriez penser qu’en utilisant simplement l’expression régulière ‘>.+<’ would be enough to extract all the contents in between the ‘>Symboles ‘ et ‘<' :
=REGEXEXTRACT(A2,">.+<")
Cependant, cela relèverait également symboles et le texte intermédiaire ci-dessous :
S'éloigner seulement à l'exception du texte intercalé et des symboles de délimitation, vous devez ajouter ".+” caractère générique entre parenthèses de groupe '()'. Cela garantit que seul le contenu à l'intérieur des accolades est extrait :
=REGEXEXTRACT(A2,">(.+)<")
Cela vous donnera le résultat suivant :
Utilisation de la fonction REGEXEXTRACT pour extraire différentes parties d'une URL
Si vous souhaitez décharger nom de domaine URL, vous pouvez utiliser REGEXEXTRACT comme suit :
=REGEXEXTRACT(A2,"http.+\ / \ /(.+) \ /")
Cela extraira tout ce qui se trouve entre HTTP:// (ou HTTPS://) et le symbole '/'.
La formule ci-dessus vous donnera le résultat suivant :
Si vous voulez toujours tout supprimer et simplement décompresser nom de domaine principal (sans sous-domaines ni extensions, la fonction REGEXEXTRACT peut être affinée comme suit :
=REGEXEXTRACT(A27,"http.+\ / \ / \ w+\.(.+)\.[org|com]")
Ici, nous nous sommes assurés que tous les mots avant le point et après le point sont supprimés. Parce que le mot après le point peut être n'importe lequel des mots "org" ou 'com'nous les avons spécifiés entre crochets.
Cela vous donnera le résultat suivant :
Utiliser la fonction REGEXEXTRACT pour extraire les différentes parties d'une adresse email
Comme dans l'exemple précédent, nous pouvons également utiliser la fonction REGEXEXTRACT pour extraire des parties d'une adresse e-mail. Par exemple, supposons que vous disposiez de la liste d'adresses e-mail suivante :
Si vous souhaitez récupérer uniquement Nom d'utilisateur partie des adresses e-mail, vous pouvez utiliser la fonction REGEXEXTRACT pour extraire tout ce qui précède le symbole @ comme suit :
=REGEXEXTRACT(A33,"(.+)@")
Cela vous donnera le résultat suivant :
Nous avons utilisé le métacaractère point au lieu de \w car nous voulons que l'expression soit considérée n'importe quel symbole dans le nom d'utilisateur, y compris les points, les traits d'union ou les traits de soulignement (comme dans le troisième exemple).
Si vous souhaitez déverrouiller au lieu d'un nom d'utilisateur nom de domaine partie de l'adresse e-mail, vous pouvez utiliser la fonction REGEXEXTRACT comme suit :
=REGEXEXTRACT(A33,"@(.+)")
Cela vous donnera le résultat suivant :
Utilisation de la fonction REGEXEXTRACT pour extraire un modèle de caractère spécifique
Supposons que vous disposiez de la liste de chaînes suivante et que vous souhaitiez extraire les numéros de téléphone de chaque cellule :
Étant donné que tous les numéros de téléphone américains suivent le même schéma, vous pouvez utiliser REGEXEXTRACT comme suit :
=REGEXEXTRACT(A40,"\(...\)...-....")
Ici, chaque point représente un caractère. Cependant, au lieu de mettre autant de points, vous pouvez raccourcir l'expression régulière en suivant le point avec le nombre de caractères entre crochets.
Ainsi, au lieu de "..." vous pouvez utiliser ". {3}" dans votre expression. Cela signifie que la formule ci-dessus peut également s'écrire :
=REGEXEXTRACT(A40,"\(.{3}\).{3}-.{4}")
Les parenthèses arrondies contiennent 3 chiffres suivis de 3 chiffres supplémentaires suivis d'un trait d'union et de 4 chiffres supplémentaires.
Cela vous donnera le résultat suivant :
Maintenant, voici une super astuce. Si vous souhaitez toujours séparer les parties du numéro de téléphone dans des colonnes distinctes indicatif régional, changer le code et numéro d'adhérant, vous pouvez utiliser des parenthèses arrondies pour marquer chaque partie souhaitée dans une colonne.
Si vous souhaitez diviser le résultat de la formule ci-dessus en trois colonnes différentes, votre fonction REGEXEXTRACT peut être écrite comme ceci :
=REGEXEXTRACT(A40,"\((.{3})\)(.{3})-(.{4})")
Cela vous donnera le résultat suivant :
Voici quelques exemples simples de la façon dont la fonction REGEXEXTRACT peut vous aider efficacement à extraire exactement ce dont vous avez besoin d'une chaîne.
Conseil de fonction REEXTRACT Google Sheets :
Voici quelques conseils importants à retenir lors de l'utilisation de REGEXEXTRACT.
- Cette fonction fonctionne uniquement avec la saisie de texte. ça marche pas avec les chiffres
- Si vous souhaitez utiliser des chiffres en entrée (par exemple, des numéros de téléphone), vous devez d'abord les convertir en texte à l'aide de la fonction TEXTE.
- La fonction REGEXEXTRACT est sensible à la casse. Par conséquent, vous devez spécifier la casse correcte dans l'expression régulière ou convertir la totalité de la chaîne d'entrée en majuscules ou minuscules à l'aide des fonctions MAJUSCULE ou MINUSCULE.
REGEXEXTRACT peut avoir de nombreuses applications une fois que vous avez appris à l'utiliser efficacement. Une solide connaissance des expressions régulières aide, et la meilleure façon de la maîtriser est de pratiquer.
Jouez avec différentes expressions régulières et voyez les résultats que vous obtenez. Vous serez surpris de l'utilité de la fonction REGEXEXTRACT lorsque vous commencerez à l'utiliser pour travailler avec vos données de feuille de calcul quotidiennes.
- Comment effectuer des instructions IF dans Google Sheets ? - 29 novembre 2024
- Comment utiliser Iferror dans Google Sheets pour éviter les erreurs? - 28 novembre 2024
- Comment fusionner facilement des Google Docs ? - 3 novembre 2024