regexp_instr 기능

적용 대상:예로 표시된 확인 Databricks SQL 예로 표시된 확인 Databricks Runtime 11.3 LTS 이상

str와 일치하는 regexp의 첫 번째 하위 문자열 위치를 반환합니다.

구문

regexp_instr( str, regexp )

인수

  • str STRING: 일치시킬 식입니다.
  • regexp STRING: 패턴이 있는 식입니다.

반품

INTEGER입니다.

문자열은 regexp 정규식이어야 합니다. 지원되는 구문 에 대한 정규식을 참조하세요.

리터럴을 사용할 때, 이스케이프 문자 사전 처리를 피하기 위해 raw-literal (r 접두사)을 사용하세요.

두 인수 중 NULL하나가 있으면 결과는 .입니다 NULL. 패턴을 찾을 수 없으면 결과는 .입니다 0.

일반적인 오류 조건

예제

첫 번째 일치 항목의 위치 찾기

패턴 Ste(v|ph)en 은 문자열의 시작 부분과 일치 Steven 하므로 위치는 1입니다.

> SELECT regexp_instr('Steven Jones and Stephen Smith are the best players', 'Ste(v|ph)en');
 1

첫 번째 숫자의 위치 찾기

위치는 1부터 시작하는 위치입니다.

> SELECT regexp_instr('Order 1234 shipped', r'\d');
 7

문자의 위치 찾기

> SELECT regexp_instr('alice@example.com', r'@');
 6

일치 항목이 0을 반환하지 않음

> SELECT regexp_instr('Mary had a little lamb', 'Ste(v|ph)en');
 0

NULL input 반환 NULL

> SELECT regexp_instr(NULL, 'Ste(v|ph)en');
 NULL

> SELECT regexp_instr('Mary had a little lamb', NULL);
 NULL

잘못된 정규식 패턴

> SELECT regexp_instr('abc', '[invalid');
  Error: INVALID_PARAMETER_VALUE.PATTERN