Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Funkcja
Dotyczy:
Databricks SQL
Databricks Runtime
Wyodrębnia wszystkie ciągi, które str pasują regexp do wyrażenia i odpowiadają indeksowi regex grupy.
Składnia
regexp_extract_all(str, regexp [, idx] )
Argumenty
-
strSTRING: Wyrażenie, które ma być dopasowane. -
regexpSTRING: wyrażenie z pasującym wzorcem. -
idx: opcjonalne wyrażenie liczby całkowitej większej lub równej 0 z wartością domyślną 1.
Zwraca
Jeden ARRAY<STRING>.
Ciąg regexp musi być wyrażeniem regularnym. Zobacz Wyrażenia regularne , aby uzyskać obsługiwaną składnię.
W przypadku używania literałów użyj raw-literal (r prefiksu), aby uniknąć wstępnego przetwarzania znaków ucieczki.
regexp może zawierać wiele grup.
idx wskazuje, która grupa wyrażeń regularnych ma być wyodrębniana.
Wartość idx 0 oznacza dopasowanie całego wyrażenia regularnego.
Typowe warunki błędów
Przykłady
Wyodrębnianie grupy przechwytywania z każdego dopasowania
idx wybiera grupę przechwytywania, która ma być zwracana z każdego dopasowania.
> 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]
Wyodrębnianie każdej liczby w ciągu
> SELECT regexp_extract_all('There are 10 cats, 20 dogs, and 30 birds', r'(\d+)', 1);
[10, 20, 30]
Wyodrębnij każdy hashtag
> SELECT regexp_extract_all('Posts tagged #data #ai #sql', r'#(\w+)', 1);
[data, ai, sql]
Wyodrębnianie każdego dopasowania wzorca bez grupowania
Jeśli wzorzec nie ma grupy przechwytywania, użyj wartości idx 0, aby zwrócić całe dopasowanie.
> SELECT regexp_extract_all('Send to alice@example.com or bob@example.org', r'\w+@\w+\.\w+', 0);
[alice@example.com, bob@example.org]
Nieprawidłowy wzorzec wyrażenia regularnego
> SELECT regexp_extract_all('abc', '[invalid', 0);
Error: INVALID_PARAMETER_VALUE.PATTERN