적용 대상:
Databricks SQL
Databricks Runtime
str와 일치하는 항목을 중심으로 regex을 분할하고 길이가 최대 limit인 배열을 반환합니다.
구문
split(str, regex [, limit] )
논쟁
-
strSTRING: 분할할 식입니다. -
regexpSTRING: 분할되는 정규식인 식입니다str. 지원되는 구문 에 대한 정규식을 참조하세요. -
limit: 기본값이 0(제한 없음)인 선택적INTEGER식입니다.
반품
ARRAY<STRING>입니다.
0인 경우 limit> : 결과 배열의 길이가 1보다 limit길지 않고 결과 배열의 마지막 항목에 마지막으로 일치된 입력 이후의 모든 입력이 regex포함됩니다.
limit
<= 0인 경우: regex가 가능한 최대 횟수만큼 적용되며, 결과 배열의 크기에 제한이 없습니다.
예제
구분 기호 문자 집합에서 분할
문자 클래스 [ABC] 는 또는 B구분 기호 중 하나A와 C 일치합니다. 후행 빈 요소는 문자열 끝에 있는 구분 기호에서 가져옵니다.
> SELECT split('oneAtwoBthreeC', '[ABC]');
[one,two,three,]
쉼표로 구분된 문자열 분할
> SELECT split('apple,banana,cherry', ',');
[apple,banana,cherry]
하나 이상의 공백 문자로 분할
공백 또는 탭의 실행이 단일 구분 기호로 작동할 수 있도록 사용합니다 \s+ .
> SELECT split('the quick brown', r'\s+');
[the,quick,brown]
요소 수 제한
0보다 크면 limit 마지막 요소는 문자열의 나머지를 보유합니다.
> SELECT split('oneAtwoBthreeC', '[ABC]', 2);
[one,twoBthreeC]
> SELECT split('oneAtwoBthreeC', '[ABC]', -1);
[one,two,three,]
데이터 정렬이 일치에 영향을 줍니다.
소문자 패턴 [abc] 은 대/소문자를 구분하지 않는 데이터 정렬에서만 대문자 구분 기호와 일치합니다.
> SELECT split('oneAtwoBthreeC' COLLATE UTF8_BINARY, '[abc]');
[oneAtwoBthreeC]
> SELECT split('oneAtwoBthreeC' COLLATE UTF8_LCASE, '[abc]');
[one,two,three,]