Мне нужно извлечь 8 цифр после известной строки:
| MyString | Extract: |
| ---------------------------- | -------- |
| mypasswordis 12345678 | 12345678 |
| # mypasswordis 12345678 | 12345678 |
| foobar mypasswordis 12345678 | 12345678 |
Я могу сделать это с помощью регулярных выражений, например:
(?<=mypasswordis.*)[0-9]{8})
Однако, когда я хочу сделать это в BigQueryиспользуя команду REGEXP_EXTRACT , я получаю сообщение об ошибке: «Невозможно разобрать регулярное выражение: недопустимый оператор perl: (? <». </p>
Я искал в библиотеке re2 и увидел, что нет позитивного взгляда назад.
Есть ли способ сделать это, используя другие методы? Что-то вроде
SELECT REGEXP_EXTRACT(MyString, r"(?<=mypasswordis.*)[0-9]{8}"))