Uwaga
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.
Dotyczy: SQL Server 2025 (17.x) (wersja zapoznawcza) Azure
SQL Database Azure SQLManaged Instance
SQL Database
w wersji zapoznawczej usługi Microsoft Fabric
Note
Jako funkcja w wersji zapoznawczej technologia przedstawiona w tym artykule podlega dodatkowym warunkom użytkowania dla wersji zapoznawczych platformy Microsoft Azure.
Zwraca tabelę ciągów rozdzielanych przez wzorzec wyrażeń regularnych. Jeśli nie ma dopasowania do wzorca, funkcja zwraca ciąg.
REGEXP_SPLIT_TO_TABLE
(
string_expression,
pattern_expression [, flags ]
)
Wymaga poziomu zgodności bazy danych 170. Aby ustawić poziom zgodności bazy danych, zapoznaj się z artykułem ALTER DATABASE (Transact-SQL) poziom zgodności.
Note
Wyrażenia regularne są dostępne w usłudze Azure SQL Managed Instance skonfigurowanym przy użyciu zasad aktualizacji always-up-to-date .
Arguments
string_expression
Wyrażenie ciągu znaków.
Może być stałą, zmienną lub kolumną ciągu znaków.
Typy danych: char, nchar, varcharlub nvarchar.
Note
Funkcje REGEXP_LIKE
, REGEXP_COUNT
i REGEXP_INSTR
obsługują typy LOB (varchar(max) i nvarchar(max)) do 2 MB dla parametru string_expression .
pattern_expression
Wzorzec wyrażenia regularnego do dopasowania. Zazwyczaj literał tekstu.
Typy danych: char, nchar, varcharlub nvarchar. pattern_expression obsługuje maksymalną długość znaków wynoszącą 8000 bajtów.
flags
Co najmniej jeden znak określający modyfikatory używane do wyszukiwania dopasowań. Typem jest varchar lub znak, z maksymalnie 30 znakami.
Na przykład ims
. Wartość domyślna to c
. Jeśli zostanie podany pusty ciąg (' ')
, będzie on traktowany jako wartość domyślna ('c')
. Podaj c
lub inne wyrażenia znaków. Jeśli flaga zawiera wiele sprzecznych znaków, program SQL Server używa ostatniego znaku.
Jeśli na przykład określisz ic
regex zwraca dopasowanie uwzględniające wielkość liter.
Jeśli wartość zawiera znak inny niż wymienione na Obsługiwane wartości flagi, zapytanie zwraca błąd podobny do następującego przykładu:
Invalid flag provided. '<invalid character>' are not valid flags. Only {c,i,s,m} flags are valid.
Obsługiwane wartości flagi
Flag | Description |
---|---|
i |
Bez uwzględniania wielkości liter (wartość domyślna false ) |
m |
Tryb wielowierszowy: ^ i $ dopasuj wiersz początkowy/końcowy oprócz tekstu rozpoczynającego/końcowego (wartość domyślna false ) |
s |
Dopasuj . \n (ustawienie domyślne false ) |
c |
Uwzględniana wielkość liter (wartość domyślna true ) |
Returns
REGEXP_SPLIT_TO_TABLE
Zwraca następującą tabelę dwukolumna:
Column name | Data type | Description |
---|---|---|
value |
Ten sam typ co string_expression lub varchar |
Jeśli ogranicznik zostanie znaleziony, jest to pasujący podciąg. W przeciwnym razie jest to całe wyrażenie. |
ordinal |
bigint | 1-oparta wartość indeksu każdej pozycji podciągów z wyrażenia wejściowego. |
Zwraca podział tabeli dla elementu the quick brown fox jumps over the lazy dog
.
SELECT *
FROM REGEXP_SPLIT_TO_TABLE('the quick brown fox jumps over the lazy dog', '\s+');
Value Ordinal
the 1
quick 2
brown 3
fox 4
jumps 5
over 6
the 7
lazy 8
dog 9