Извлечение подстроки из текстовой строки в Excel
Возможно, вам часто приходится извлекать подстроки из текстовых строк. В Excel нет прямой функции для этой задачи, но с помощью комбинации функций LEFT, RIGHT, MID и SEARCH вы легко сможете извлекать нужные фрагменты текста по мере необходимости.

- Извлечение подстроки с определённым количеством символов из текстовой строки
- Извлечение подстроки до или после определённого символа из текстовой строки
Извлечение подстроки с определённым количеством символов из текстовой строки
В Excel функции LEFT, RIGHT и MID позволяют извлекать подстроку указанной длины с начала, конца или из середины текстовой строки.
- LEFT function: для извлечения подстроки с начала текстовой строки.
- RIGHT functionИзвлеките текст с правой части текстовой строки.
- MID function: для извлечения подстроки из середины текстовой строки.
Извлечение подстроки с левой части текстовой строки:
Функция LEFT извлекает первые x символов из текстовой строки. Её общий синтаксис:
- textТекстовая строка, из которой нужно извлечь символы.
- num_chars: количество символов, которые нужно извлечь с левой стороны текстовой строки.
Введите следующую формулу в пустую ячейку:
Затем перетащите маркер заполнения вниз по ячейкам, к которым нужно применить эту формулу, — и первые 3 символа будут извлечены из исходного текста (см. снимок экрана):

Извлечение подстроки с правой части текстовой строки:
Для извлечения подстрок с конца текста используйте функцию RIGHT:
- text: текстовая строка, из которой нужно извлечь символы.
- num_chars: количество символов, которые нужно извлечь с правого края текстовой строки.
Например, чтобы извлечь последние 6 символов из текстовой строки, введите следующую формулу в пустую ячейку:
Затем скопируйте эту формулу в нужные ячейки — и 6 символов будут автоматически извлечены с правого края текста (см. снимок экрана):

Извлечение подстроки из середины текстовой строки:
Чтобы извлечь подстроку заданной длины из середины текста, используйте функцию MID.
- text: текстовая строка, из которой нужно извлечь символы.
- start_num: позиция первого символа, с которого начинается извлечение.
- num_chars: общее количество символов, которые нужно извлечь.
Например, чтобы извлечь 3 символа, начиная с седьмого символа текстовой строки, введите следующую формулу в пустую ячейку:
Затем перетащите маркер заполнения вниз по ячейкам, чтобы применить эту формулу, и Вы получите следующий результат:

Извлечение подстроки до или после определённого символа из текстовой строки
Функции LEFT, RIGHT и MID позволяют извлекать подстроки фиксированной длины, но иногда требуется выделить фрагмент переменной длины. В таких случаях можно воспользоваться более сложными формулами.
Извлечение подстроки до определённого символа
Для извлечения всех символов до определённого символа используйте общий синтаксис:
- text: текстовая строка, из которой нужно извлечь символы.
- char: конкретный символ, по которому выполняется извлечение подстроки.
Например, чтобы извлечь все символы до символа дефиса, примените следующую формулу в пустую ячейку:
Затем перетащите маркер заполнения вниз по ячейкам, к которым нужно применить эту формулу, и все символы до дефиса будут извлечены, как показано на снимке экрана:

Пояснение формулы:
- SEARCH("-",A2)-1:Функция SEARCH определяет позицию дефиса в ячейке A2, после чего из неё вычитается 1, чтобы исключить сам символ. Полученное значение задаёт количество символов для функции LEFT через аргумент num_chars.
- LEFT(A2, SEARCH("-",A2)-1): Эта функция LEFT извлекает с левой стороны текста в ячейке A2 столько символов, сколько возвращает функция SEARCH.
Извлечение подстроки после определённого символа
Чтобы извлечь подстроки после определённого символа, используйте функции RIGHT, LEN и SEARCH. Общий синтаксис:
- textТекстовая строка, из которой необходимо извлечь символы.
- char: конкретный символ, по которому выполняется извлечение подстроки.
Чтобы извлечь символы после символа дефиса, примените следующую формулу:
Затем скопируйте эту формулу в ячейки, где она требуется, и Вы получите результат, как показано на снимке экрана:

Пояснение формулы:
- SEARCH("-",A2):Функция SEARCH определяет позицию дефиса в ячейке A2.
- LEN(A2)-SEARCH("-",A2):Общая длина текстовой строки, возвращаемая функцией LEN, за вычетом позиции символа «-», найденной функцией SEARCH, даёт количество символов после указанного разделителя. Это значение используется в качестве аргумента num_chars функции RIGHT.
- RIGHT():Функция RIGHT извлекает указанное количество символов с конца текстовой строки в ячейке A2.
Извлечение подстроки между двумя определёнными символами
Если вам нужно извлечь подстроку между двумя заданными символами, приведённые ниже функции могут оказаться полезными. Общий синтаксис выглядит следующим образом:
- text: текстовая строка, из которой нужно извлечь символы.
- char: конкретный символ, на основе которого выполняется извлечение подстроки.
Например, чтобы извлечь текст между двумя дефисами, используйте следующую формулу:
Затем перетащите маркер заполнения вниз, чтобы применить эту формулу к другим ячейкам, и вы получите результат, как показано на следующем снимке экрана:

Пояснение формулы:
- SEARCH("-",A2) + 1:Функция SEARCH возвращает позицию дефиса, а прибавление единицы указывает, что извлечение подстроки начинается со следующего символа. Это значение передаётся в качестве аргумента start_num функции MID.
- SEARCH("-",A2,SEARCH("-",A2)+1): Эта часть формулы определяет позицию второго вхождения дефиса.
- SEARCH("-",A2,SEARCH("-",A2)+1) - SEARCH("-",A2) - 1):Позиция второго дефиса минус позиция первого даёт количество символов между ними; затем из результата вычитается 1, чтобы исключить сам разделитель. Это значение используется как аргумент num_chars функции MID.
- MID():Функция MID извлекает подстроку на основе двух указанных выше аргументов.

Используемые связанные функции:
- LEFT:
- Функция LEFT извлекает заданное количество символов с начала текстовой строки.
- RIGHT:
- Функция RIGHT извлекает текст с правого конца текстовой строки.
- MID:
- Функция MID извлекает заданные символы из середины текстовой строки.
- SEARCH:
- Функция SEARCH позволяет быстро найти позицию нужного символа или подстроки в указанном тексте.
Дополнительные статьи:
- Получение или извлечение первого слова из текстовой строки в Excel
- Чтобы извлечь первые слова из списка текстовых строк, разделённых пробелами, используйте в Excel функции LEFT и FIND.
- Получение или извлечение последнего слова из текстовой строки в Excel
- Чтобы извлечь последнее слово из текстовой строки, разделённой пробелами, обычно используется формула на основе функций TRIM, SUBSTITUTE, RIGHT и REPT в Excel.
- Извлечение последней строки текста из ячейки с несколькими строками
- Прямого способа извлечь последнюю строку текста из строки, разделённой разрывами строк, в Excel не существует. В этой статье мы покажем формулу, которая решает эту задачу.
Лучшие инструменты для повышения продуктивности в Office
Kutools для Excel — Помогает вам выделиться из толпы
Kutools для Excel предлагает более 300 функций,гарантируя, что всё необходимое всегда под рукой…
Office Tab — Включает вкладки для чтения и редактирования в Microsoft Office (включая Excel)
- Переключайтесь между десятками открытых документов всего за секунду!
- Сократите сотни кликов мышью каждый день и забудьте о «мышечной руке».
- Повышает продуктивность на 50 % при одновременном просмотре и редактировании нескольких документов.
- Добавляет удобство работы с вкладками в Office (включая Excel) — как в Chrome, Edge и Firefox.
