Извлечение чисел после строки, которая включает в себя кавычки, скобки, фигурные скобки в Google Sheets - PullRequest
0 голосов
/ 10 марта 2020

Сразу после следующей строки есть числа:

"balances":[{"balance":

Застрял в экранировании кавычек и во всем остальном. Ничто из того, что я пробовал, к сожалению не сработало.

=REGEXEXTRACT(A1,"(?:"balances":[{"balance":)\K\d+")

Ответы [ 2 ]

1 голос
/ 11 марта 2020

Вы должны помнить, что

  • Чтобы ввести двойную кавычку в строковом литерале в двойных кавычках в Google Sheets, вам нужно удвоить его
  • Если вам нужно извлечь часть регулярное выражение соответствует REGEXEXTRACT, вам нужно использовать группу захвата , чтобы заключить эту часть в пару неэкранированных скобок
  • Если вам не нужно количественно определять последовательность шаблонов или использовать там чередование нет необходимости заключать эту часть шаблона в группу без захвата, просто удалите ее.
  • Механизм регулярных выражений Google Sheets - это RE2, который не поддерживает большинство Perl «дополнительных» функций, таких как \G, \K, (*SKIP)(*FAIL) а что нет. Если вы хотите протестировать регулярное выражение онлайн, которое должно быть совместимым с RE2, протестируйте его на http://regex101.com, используя Golang regex flavor.

Используйте

=REGEXEXTRACT(A1,"""balances"":\[{""balance"":(\d+)")

См. regex demo .

0 голосов
/ 10 марта 2020

=REGEXEXTRACT(A1,"(?:""balances"":\[{""balance"":)(\d+)")

...