적용 대상: Microsoft Fabric의 SQL Server 2025(17.x)
Azure SQL Database
Azure SQL Managed Instance
SQL 데이터베이스
regex 패턴으로 구분된 문자열 분할 테이블을 반환합니다. 패턴과 일치하지 않으면 함수는 문자열을 반환합니다.
REGEXP_SPLIT_TO_TABLE
(
string_expression,
pattern_expression [ , flags ]
)
데이터베이스 호환성 수준 170이 필요합니다. 데이터베이스 호환성 수준을 설정하려면 ALTER DATABASE(Transact-SQL) 호환성 수준을 검토합니다.
Note
정규식은 SQL Server 2025 또는 Always-up-to-date업데이트 정책을 사용하여 Azure SQL Managed Instance에서 사용할 수 있습니다.
Arguments
string_expression
문자열의 식입니다.
문자열의 상수, 변수 또는 열일 수 있습니다.
데이터 형식: char, nchar, varchar 또는 nvarchar.
Note
, REGEXP_LIKE및 REGEXP_COUNT 함수는 REGEXP_INSTRstring_expression 매개 변수에 대해 LOB 형식(varchar(max) 및 nvarchar(max))을 최대 2MB까지 지원합니다.
pattern_expression
일치시킬 정규식 패턴입니다. 일반적으로 텍스트 리터럴입니다.
데이터 형식: char, nchar, varchar 또는 nvarchar. pattern_expression 최대 문자 길이는 8,000바이트입니다.
flags
일치 항목을 검색하는 데 사용되는 한정자를 지정하는 하나 이상의 문자입니다. varchar 또는 char 형식이며 최대 30자입니다.
예: ims. 기본값은 c입니다. 빈 문자열 (' ') 이 제공되면 기본값 ('c')으로 처리됩니다. 또는 다른 문자 식을 제공합니다 c . 플래그에 모순된 문자가 여러 개 있는 경우 SQL Server는 마지막 문자를 사용합니다.
예를 들어 regex를 지정 ic 하면 대/소문자를 구분하는 일치 항목이 반환됩니다.
값에 지원되는 플래그 값에 나열된 문자가 아닌 문자가 포함된 경우 쿼리는 다음 예제와 같은 오류를 반환합니다.
Invalid flag provided. '<invalid character>' are not valid flags. Only {c,i,s,m} flags are valid.
지원되는 플래그 값
| Flag | Description |
|---|---|
i |
대/소문자를 구분하지 않습니다(기본값 false) |
m |
여러 줄 모드: ^$ 시작/끝 텍스트 외에 시작/끝 선 일치(기본값 false) |
s |
일치 . 허용\n(기본값false) |
c |
대/소문자 구분(기본값 true) |
Returns
REGEXP_SPLIT_TO_TABLE 는 다음 두 열 테이블을 반환합니다.
| 열 이름 | 데이터 형식 | Description |
|---|---|---|
value |
string_expression와 같은 형식 |
구분 기호가 발견되면 일치하는 부분 문자열입니다. 그렇지 않으면 전체 식입니다. |
ordinal |
bigint | 입력 식에서 각 부분 문자열 위치의 1부터 시작하는 인덱스 값입니다. |
에 대한 테이블 분할을 반환합니다 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