Dela via


REGEXP_SPLIT_TO_TABLE förhandsversion

Gäller för: SQL Server 2025 (17.x) Förhandsversion av Azure SQL DatabaseAzure SQL Managed InstanceSQL Database i Förhandsversion av Microsoft Fabric

Note

Som en förhandsgranskningsfunktion omfattas tekniken som presenteras i den här artikeln av kompletterande användningsvillkor för Förhandsversioner av Microsoft Azure.

Returnerar en tabell med delade strängar, avgränsade med regex-mönstret. Om det inte finns någon matchning i mönstret returnerar funktionen strängen.

REGEXP_SPLIT_TO_TABLE
     (
      string_expression,
      pattern_expression [, flags ]
     )

Kräver databaskompatibilitetsnivå 170. Om du vill ange databaskompatibilitetsnivå läser du kompatibilitetsnivån ALTER DATABASE (Transact-SQL).

Note

Reguljära uttryck är tillgängliga i Azure SQL Managed Instance med sql Server 2025- eller always-up-to-date update-principen.

Arguments

string_expression

Ett uttryck för en teckensträng.

Kan vara en konstant, variabel eller kolumn med teckensträng.

Datatyper: char, nchar, varchareller nvarchar.

Note

Funktionerna REGEXP_LIKE, REGEXP_COUNToch REGEXP_INSTR stöder LOB-typer (varchar(max) och nvarchar(max)) upp till 2 MB för parametern string_expression .

pattern_expression

Mönster för reguljära uttryck som ska matchas. Vanligtvis en textliteral.

Datatyper: char, nchar, varchareller nvarchar. pattern_expression stöder en maximal teckenlängd på 8 000 byte.

flags

Ett eller flera tecken som anger de modifierare som används för att söka efter matchningar. Typen är varchar eller tecken, med högst 30 tecken.

Till exempel ims. Standardvärdet är c. Om en tom sträng (' ') anges behandlas den som standardvärdet ('c'). Ange c eller andra teckenuttryck. Om flaggan innehåller flera motstridiga tecken använder SQL Server det sista tecknet.

Om du till exempel anger ic returnerar regex skiftlägeskänslig matchning.

Om värdet innehåller ett annat tecken än de som anges i flagga som stödsreturnerar frågan ett fel som liknar följande exempel:

Invalid flag provided. '<invalid character>' are not valid flags. Only {c,i,s,m} flags are valid.
Flaggvärden som stöds
Flag Description
i Skiftlägesokänsligt (standard false)
m Flerradsläge: ^ och $ matcha start-/slutlinje utöver start-/sluttext (standard false)
s Låt . matcha \n (standard false)
c Skiftlägeskänsligt (standard true)

Returns

REGEXP_SPLIT_TO_TABLE returnerar följande tabell med två kolumner:

Kolumnnamn Datatyp Description
value Samma typ som string_expression eller varchar Om avgränsare hittas är det den matchande delsträngen. Annars är det hela uttrycket.
ordinal bigint 1-baserat indexvärde för varje understrängsposition från indatauttrycket.

Returnera en tabelldelning för 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