ReplaceRegExGroup() возвращает строку после замены одного или нескольких совпадений между входной строкой и заданным шаблоном составного регулярного выражения. Текст, который заменяет совпадающий текст, указан в аргументе to_str. Функция работает слева направо, но если задано отрицательное значение occurrence, функция читает справа налево.
Эта функция выполняет операции с регулярными выражениями, чувствительные к регистру. В качестве альтернативы можно использовать вариант ReplaceRegExGroupI() для выполнения операций с регулярными выражениями без учета регистра.
Синтаксис:
ReplaceRegExGroup
(text, regex, to_str, group [, occurrence])
Возвращаемые типы данных: строка
Аргументы
Аргумент
Описание
text
Текст входной строки, который требуется полностью или частично заменить новым текстом из to_str.
regex
Регулярное выражение, определяющее, когда заменять текст. Заменяются совпадения между этим аргументом и аргументом text.
to_str
Новый текст, который требуется использовать для замены существующего содержимого из text.
group
Номер группы в случае составного регулярного выражения.
Если регулярное выражение содержит только одну группу, используйте вместо этого функцию ReplaceRegEx(). В качестве альтернативы используйте функцию ReplaceRegExGroup() с group=0.
Можно указать отрицательное значение group для поиска совпадений справа налево.
occurrence
Номер совпадения (между входным текстом и регулярным выражением) для замены новым текстом.
Данный аргумент является необязательным. По умолчанию 0, если опущено. Когда используется значение 0 или если аргумент опущен, все совпадения между text и regex заменяются на to_str.
Можно указать отрицательное значение для occurrence, если требуется искать совпадения справа налево.
Возвращает abc123abx123. Есть два совпадения между первой группой входного текста и шаблоном регулярного выражения. Однако заменяется только второе вхождение.
Возвращает ABC123ABC123. Другими словами, замена текста не выполняется. Это объясняется тем, что функция учитывает регистр, а вариант функции без учета регистра не используется.
Возвращает ABx123ABx123. В этом примере замена текста происходит потому, что используется нечувствительный к регистру вариант функции, ReplaceRegExGroupI().
Когда это следует использовать
Можно использовать ReplaceRegExGroup() для изменения текста с учетом стандартов форматирования и соответствия, особенно когда требуется определить в данных сложные шаблоны. Дополнительный аргумент group для этой функции позволяет обновлять только определенные части большого текстового шаблона. Например, можно обновлять определенные части URL-адреса.
При необходимости также можно использовать эту функцию для маскирования конфиденциальной информации, такой как персональная идентифицирующая информация (PII), чтобы она не отображалась пользователям, анализирующим приложение.
Пример 1: скрипт загрузки для обновления домена в URL-адресах
Обзор
Откройте редактор загрузки данных и добавьте приведенный ниже скрипт загрузки на новую вкладку.
Скрипт загрузки содержит следующее:
Таблица URLs, изначально содержащая список входных строк, в которых требуется определить и обновить определенные URL-адреса. Требуется обновить домен в этих URL-адресов.
Создание поля ResourceURL_Updated, содержащего измененный текст ввода с обработанными URL-адресами.
ПеременнаяURL_RegEx для хранения регулярного выражения, которое используется для определения URL-адресов, требующих обработки.
Требования:
Каждая входная строка содержит два URL-адреса, причем URL-адрес ресурса указан в первом URL-адресе. Требуется обновить только первый URL-адрес из перечисленных.
URL-адрес для обновления должен быть в формате <https или https>://<домен>.com/<путь к ресурсу>. Путь к ресурсам указывать необязательно, но в данном примере он не используется.
Скрипт загрузки
Set URL_RegEx = '(https?):\/\/(([a-zA-Z0-9]+)\.([a-zA-Z0-9]*)\.??([a-zA-Z0-9]*))\/?((([a-zA-Z0-9]*)*)((\/?([a-zA-Z0-9]*)*))*)\/{0,1}([\.,;]+(?=\s))*?';
URLs:
Load
ReplaceRegExGroup(URLsList, '$(URL_RegEx)', 'replacement-server', 2,1) as ResourceURL_Updated;
Load * Inline `
URLsList
The resource is located at https://testserver.com/files. For more help, see: https://support.company.com.
The resource is located at https://testserver.com/files/worksheet. For more help, see: https://support.company.com.
The resource is located at https://testserver.com/files/book. For more help, see: https://support.company.com.
The resource is located at https://testserver.com/files/form. For more help, see: https://support.company.com.
The resource is located at https://testserver.com/datamodel. For more help, see: https://support.company.com.
The resource is located at https://testserver.com/resourcenew. For more help, see: https://support.company.com.
The resource is located at https://testserver.com/page. For more help, see: https://support.company.com.
The resource is located at https://testserver.com/page/overview. For more help, see: https://support.company.com.
` (delimiter is '\t');
Результаты
Загрузите данные и откройте лист. Создайте новую таблицу и добавьте это поле как измерение:
ResourceURL_Updated
Таблица результатов
ResourceURL_Updated
The resource is located at https://replacement-server/datamodel. For more help, see: https://support.company.com.
The resource is located at https://replacement-server/files. For more help, see: https://support.company.com.
The resource is located at https://replacement-server/files/book. For more help, see: https://support.company.com.
The resource is located at https://replacement-server/files/form. For more help, see: https://support.company.com.
The resource is located at https://replacement-server/files/worksheet. For more help, see: https://support.company.com.
The resource is located at https://replacement-server/page. For more help, see: https://support.company.com.
The resource is located at https://replacement-server/page/overview. For more help, see: https://support.company.com.
The resource is located at https://replacement-server/resourcenew. For more help, see: https://support.company.com.
Пример 2: выражение диаграммы для обновления протокола в URL-адресах
Обзор
Откройте редактор загрузки данных и добавьте приведенный ниже скрипт загрузки на новую вкладку.
Скрипт загрузки содержит следующее:
Таблица URLsList, содержащая список входных строк, в которых требуется определить и обновить определенные URL-адреса. Требуется обновить протокол с http на https в ссылках на сайт поддержки.
Требования:
Каждая строка ввода содержит два URL-адреса, причем ссылка на сайт поддержки отображается как второй URL-адрес. Требуется обновить только второй URL-адрес из перечисленных.
URL-адрес для обновления должен быть в формате <https или https>://<домен>.com/<путь к ресурсу>. Путь к ресурсам указывать необязательно, в данном примере он не используется.
Скрипт загрузки
URLs:
Load * Inline `
URLsList
The resource is located at https://testserver.com/files. For more help, see: http://support.company.com.
The resource is located at https://testserver.com/files/worksheet. For more help, see: http://support.company.com.
The resource is located at https://testserver.com/files/book. For more help, see: http://support.company.com.
The resource is located at https://testserver.com/files/form. For more help, see: http://support.company.com.
The resource is located at https://testserver.com/datamodel. For more help, see: http://support.company.com.
The resource is located at https://testserver.com/resourcenew. For more help, see: http://support.company.com.
The resource is located at https://testserver.com/page. For more help, see: http://support.company.com.
The resource is located at https://testserver.com/page/overview. For more help, see: http://support.company.com.
` (delimiter is '\t');
Результаты
Загрузите данные и откройте лист. Создайте новую таблицу и добавьте это поле как измерение:
Если вы обнаружили какую-либо проблему на этой странице и с ее содержанием — будь то опечатка, пропущенный шаг или техническая ошибка, сообщите нам об этом, чтобы мы смогли ее исправить!