Параметр groupIdx функции spark regexp_extract - PullRequest
0 голосов
/ 07 октября 2019

Я не понимаю, как работает последний параметр groupIdx в функции ниже, я не могу найти какие-либо подробности в документации. Я использую эту функцию с groupIdx = 0, когда я изменил это значение на> 0, я получил ошибку java.lang.IndexOutOfBoundsException: No group 1. Может кто-нибудь объяснить, как это работает и когда можно применить groupIdx> 0?

regexp_extract(e: Column, exp: String, groupIdx: Int): Column

1 Ответ

1 голос
/ 07 октября 2019

Аргумент извлекает часть совпадения, которая была захвачена с указанной группой захвата .

См. документы :

regexp_extract(str, regexp[, idx]) - Extracts a group that matches regexp. Примеры: > SELECT regexp_extract('100-200', '(\d+)-(\d+)', 1);100

Подстрока 100 захватывается с первым (\d+) в шаблоне регулярных выражений, а аргумент 1 заставляет функцию возвращать только эту часть полного соответствия (что* * тысяча двадцать одна). * * тысяча двадцать-дв

...