Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Fonction
S’applique à :
Databricks SQL
Databricks Runtime
Extrait toutes les chaînes contenues dans str qui correspondent à l’expression regexp et à l’index de groupe regex.
Syntaxe
regexp_extract_all(str, regexp [, idx] )
Arguments
-
str: expressionSTRINGà mettre en correspondance. -
regexp: une expressionSTRINGavec un modèle correspondant. -
idx: expression d’un nombre intégral facultatif supérieure ou égale à 0 avec 1 comme valeur par défaut.
Retours
ARRAY<STRING>.
La regexp chaîne doit être une expression régulière. Consultez les expressions régulières pour la syntaxe prise en charge.
Lors de l’utilisation de littéraux, utilisez raw-literal (préfixe r) pour éviter le traitement préalable du caractère d’échappement.
regexp peut contenir plusieurs groupes.
idx indique le groupe d’expressions régulières à extraire.
Un idx de 0 signifie correspondre à l’expression régulière entière.
Conditions d’erreur courantes
Exemples
Extraire un groupe de capture de chaque correspondance
idx sélectionne le groupe de capture à retourner à partir de chaque correspondance.
> SELECT regexp_extract_all('100-200, 300-400', r'(\d+)-(\d+)', 1);
[100, 300]
> SELECT regexp_extract_all('100-200, 300-400', r'(\d+)-(\d+)', 2);
[200, 400]
Extraire chaque nombre d’une chaîne
> SELECT regexp_extract_all('There are 10 cats, 20 dogs, and 30 birds', r'(\d+)', 1);
[10, 20, 30]
Extraire chaque hashtag
> SELECT regexp_extract_all('Posts tagged #data #ai #sql', r'#(\w+)', 1);
[data, ai, sql]
Extraire chaque correspondance d’un modèle sans groupe
Lorsque le modèle n’a pas de groupe de capture, utilisez une idx valeur de 0 pour retourner toute la correspondance.
> SELECT regexp_extract_all('Send to alice@example.com or bob@example.org', r'\w+@\w+\.\w+', 0);
[alice@example.com, bob@example.org]
Modèle regex non valide
> SELECT regexp_extract_all('abc', '[invalid', 0);
Error: INVALID_PARAMETER_VALUE.PATTERN