Хорошо, выслушай меня!Я видел десятки подобных вопросов о RegEx, но контекст - это все!Я пытаюсь включить поиск по регулярному выражению в функцию Google Sheets, которая будет сопоставлять все запятые из длинной строки, исключая запятые в скобках.Однако Google Sheets должен быть достаточно простым, но в нем используется RE2, который явно не любит обходных путей и часто выдает удручающую ошибку («значение параметра 2» независимо от того, что «не является допустимым регулярным выражением».).Итак, многие из подходов, которые я использовал, были неудачными.
Я должен отметить, что я ДОЛЖЕН использовать Google Sheets для этого процесса (согласно моему боссу), я загружаю данные непосредственно в Sheets из одного из наших API, и его структура внутри API не может измениться.Любые другие советы приветствуются!
Вот как выглядят данные:
Миндаль_111, Амарант_222, Анчоус_333, Яблоко (средний, органический) _444, Абрикос_5555, Артишок_6666
Мне нужночтобы сопоставить первичные запятые, чтобы я мог разделить их (или изменить их и разделить новым символом), сохраняя при этом данные вокруг вторичной запятой нетронутыми (т. е. «(средний, обычный)»).
Вот кое-что из того, что я пробовал до сих пор:
аккуратный обзор, который работает в regex101, но не в Sheets
(?<=\d),
Подробнеесложный обзор, который не работает в Sheets (или regex101 хе)
,(?=(((?!\]).)*\()|[^\[\)]*$)
Попытка захвата группы (также, я должен что-то упустить из-за захвата противКонцепция захвата группы ?? Поскольку группа без шапки все еще включена, когда я запускаю это ...)
(?:\d)(,)
Соответствует правильно в regex101, но не в Sheets
,\s*(?![^()]*\))
Хорошо, это суть!Любая помощь будет оценена.Спасибо!