Поиск и замена части текста при помощи постоянных выражений
В работе маркетолога нередко приходится обрабатывать различный по собственному содержанию текст. При большенном количестве частей и их разной записи, созодать это обычными способами нереально.
Для этого лучше употреблять постоянные выражения.
Привожу шаблон Google таблиц с несколькими самыми пользующимися популярностью для аналитика запросами.
Постоянные выражения
Постоянные выражения — это принятый большинством редакторов текста код, который значит тот либо другой смысл. К примеру код .* значит все элементы.
Применение в гугл таблицах
Задачки могут очень различаться. К примеру в google таблицах необходимо убрать из utm ссылок всё, что идёт опосля адреса странички.
Ссылки с utm метками
Для этого необходимо пользоваться специальной формулой таблиц для постоянных выражений.
REGEXREPLACE(текст; регулярное_выражение; замена)
— С текстом всё понятно, избираем ячейку с ссылкой;
— С постоянным выражением труднее, пишем код &.*|?.* в отдельной ячейке и выбираю её. Дальше разберу подробнее, что он означает;
— Для подмены используем пустое пространство «»
Таблица подмены
Получаем в столбце «Формула» ссылку без utm меток. Практически происходит последующее:
Мы говорим, возьми текст из ячейки А2 → избери по постоянному выражению в ячейке В2 весь текст из А2 → подставь пустое пространство («»)
Разберём постоянное выражение &.*|?.*
Используя таковой код, мы говорим возьми все знаки (.*) до знака & (&) либо (|) возьми все знаки (.*) до знака ? (?)
Где поглядеть все постоянные выражения
Значения постоянных выражений можно поглядеть на особом веб-сайте https://regexr.com/. Весьма комфортно вставить анализируемый текст и подбирать коды постоянных выражений. Подсветкой будет выделен избираемый текст.
Скрин моделирования постоянных выражений
Коды приведены в левом пунтке меню Cheatsheet
Коротко привожу их здесь
Код | Описание |
. | Самое обычное — это точка. Она обозначает хоть какой знак в шаблоне на обозначенной позиции. |
s | Хоть какой знак, выглядящий как пробел (пробел, табуляция либо перенос строчки). |
S | Анти-вариант предшествующего шаблона, т.е. хоть какой НЕпробельный знак. |
d | Неважно какая цифра |
D | Анти-вариант предшествующего, т.е. неважно какая НЕ цифра |
w | Хоть какой знак латиницы (A-Z), цифра либо символ подчеркивания |
W | Анти-вариант предшествующего, т.е. не латиница, не цифра и не подчеркивание. |
[символы] | В квадратных скобках можно указать один либо несколько знаков, разрешенных на обозначенной позиции в тексте. К примеру ст[уо]л будет соответствовать хоть какому из слов: стол либо стул. Также можно не перечислять знаки, а задать их спектром через дефис, т.е. заместо [ABDCDEF] написать [A-F]. либо заместо [4567] ввести [4-7]. К примеру, для обозначения всех знаков кириллицы можно употреблять шаблон [а-яА-ЯёЁ]. |
[^символы] | Если опосля открывающей квадратной скобки добавить знак «крышки» ^, то набор приобретет оборотный смысл — на обозначенной позиции в тексте будут разрешены все знаки, не считая перечисленных. Так, шаблон [^ЖМ]уть отыщет Путь либо Сущность либо Забудь, но не Жуть либо Муть, к примеру. |
| | Логический оператор ИЛИ (OR) для проверки по хоть какому из обозначенных критериев. К примеру (счет|счёт|invoice) будет находить в тексте хоть какое из обозначенных слов. Обычно набор вариантов заключается в скобки. |
^ | Начало строчки |
$ | Конец строчки |
b | Край слова |
Если мы отыскиваем определенное количество знаков, к примеру, шестизначный почтовый индекс либо все трехбуквенные коды продуктов, то на помощь нам приходят квантификаторы либо кванторы — особые выражения, задающие количество разыскиваемых символов. Квантификаторы используются к тому символу, что стоит перед ним:
Квантор | Описание |
? | Ноль либо одно вхождение. К примеру .? будет означать один хоть какой знак либо его отсутствие. |
+ | Одно либо наиболее вхождений. К примеру d+ значит хоть какое количество цифр (т.е. хоть какое число от 0 до бесконечности). |
* | Ноль либо наиболее вхождений, т.е. хоть какое количество. Так s* значит хоть какое количество пробелов либо их отсутствие. |
<число> либо <число1,число2> |
Если необходимо задать строго определенное количество вхождений, то оно задается в фигурных скобках. К примеру d значит строго 6 цифр, а шаблон s<2,5> — от 2-ух до 5 пробелов |
Полезные ссылки по теме
Справка гугла
Кроме использования REGEXREPLACE постоянные выражения можно использовать и в
REGEXEXTRACT : Извлекает определенную часть текста, подобающую постоянному выражению.
REGEXMATCH : Инспектирует, соответствует ли текст постоянному выражению.
ПОДСТАВИТЬ : Подменяет один текст на иной.
ЗАМЕНИТЬ : Подменяет избранный текст на иной