KutoolsforOffice — Одно решение — пять мощных инструментов.Меньше усилий — больше результата.

после последнего вхождения определённого символа

АвторСяоянДата изменения

Если у вас есть список сложных текстовых строк, содержащих несколько разделителей (например, как на скриншоте ниже — дефисы, запятые и пробелы в одной ячейке), и вы хотите определить позицию последнего дефиса, а затем извлечь подстроку после него, в этой статье я предложу несколько эффективных формул для решения этой задачи.

doc-extract-text-after-last-character-1


Формула 1: извлечение подстроки после последнего вхождения определённого разделителя

В Excel функция ПРАВСИМВ в сочетании с функциями ДЛСТР, НАЙТИ и ПОДСТАВИТЬ поможет создать формулу для решения этой задачи.

1. Чтобы извлечь подстроку после последнего вхождения дефиса, вставьте или скопируйте следующую формулу в пустую ячейку:

=RIGHT(A2,LEN(A2)-SEARCH("#",SUBSTITUTE(A2,"-","#",LEN(A2)-LEN(SUBSTITUTE(A2,"-","")))))

2. Затем перетащите маркер заполнения вниз до ячеек, к которым нужно применить формулу, — и вы получите результат, как показано на скриншоте ниже:

doc-extract-text-after-last-character-2


Пояснение формулы:

1. LEN(A2)-LEN(SUBSTITUTE(A2,"-",«»)): эта часть формулы определяет количество дефисов в ячейке A2.

  • LEN(A2): эта функция ДЛСТР возвращает общее количество символов в ячейке A2. Результат — 44.
  • ПОДСТАВИТЬ(A2;"-";«»): эта функция ПОДСТАВИТЬ заменяет все дефисы на пустую строку. В результате вы получите: «InsertDeleterows, sheets, images, formulas».
  • ДЛСТР(ПОДСТАВИТЬ(A2;"-";«»)): получение общей длины текстовой строки в ячейке A2 без дефисов.
  • LEN(A2)-LEN(SUBSTITUTE(A2,"-",«»)): вычитание длины текстовой строки без дефисов из общей длины строки позволяет определить количество дефисов. Результат: 2.

2. ПОДСТАВИТЬ(A2;"-";«#»;LEN(A2)-LEN(ПОДСТАВИТЬ(A2;"-";«»))): эта функция ПОДСТАВИТЬ заменяет последнее вхождение дефиса (рассчитанное первой частью формулы) на символ #. В результате вы получите: «Insert-Delete#rows, sheets, images, formulas».

doc-extract-text-after-last-character-3

3. SEARCH(«#»,SUBSTITUTE(A2,"-",«#»,LEN(A2)-LEN(SUBSTITUTE(A2,"-",«»))))=SEARCH(«#», «Insert-Delete#rows, sheets, images, formulas»): функция НАЙТИ возвращает позицию символа # в текстовой строке, преобразованной с помощью функции ПОДСТАВИТЬ. Результат: 14.

4. LEN(A2)-SEARCH(«#»,SUBSTITUTE(A2,"-",«#»,LEN(A2)-LEN(SUBSTITUTE(A2,"-",«»)))): эта часть формулы определяет количество символов после последнего дефиса. Результат: 30.

5. RIGHT(A2,LEN(A2)-SEARCH(«#»,SUBSTITUTE(A2,"-",«#»,LEN(A2)-LEN(SUBSTITUTE(A2,"-",«»)))))=RIGHT(A2, 30): наконец, функция ПРАВСИМВ извлекает с правой стороны текстовой строки в ячейке A2 30 символов (рассчитанных на шаге 4).


Примечания:

1. Если вам нужно извлечь текст после последнего вхождения другого разделителя, просто замените дефис на нужный вам символ-разделитель.

2. Если указанный разделитель отсутствует в текстовой строке, приведённая выше формула вернёт ошибку, как показано на скриншоте:

doc-extract-text-after-last-character-4

Чтобы устранить эту ошибку, оберните приведённую выше формулу в функцию ЕСЛИОШИБКА, используя следующее выражение:

=IFERROR(RIGHT(A2,LEN(A2)-SEARCH("#",SUBSTITUTE(A2,"-","#",LEN(A2)-LEN(SUBSTITUTE(A2,"-",""))))), A2)

doc-extract-text-after-last-character-5


Формула 2: извлечение подстроки после последнего вхождения определённого разделителя

Вот ещё одна простая формула, созданная с использованием функций СЖПРОБЕЛЫ, ПРАВСИМВ, ПОДСТАВИТЬ, ПОВТОР и ДЛСТР, которая также поможет решить эту задачу в Excel.

1. Скопируйте или вставьте приведённую ниже формулу в пустую ячейку, где вы хотите получить результат:

=TRIM(RIGHT(SUBSTITUTE(A2,"-",REPT(" ",LEN(A2))),LEN(A2)))

2. Затем перетащите маркер заполнения вниз на ячейки, к которым нужно применить эту формулу, — и все подстроки после последних дефисов будут извлечены, как показано на скриншоте ниже:

doc-extract-text-after-last-character-6


Пояснение формулы:

1. LEN(A2): функция ДЛСТР возвращает общее количество символов в ячейке A2. Это значение используется как аргумент «количество_знаков» в функции ПРАВСИМВ. Результат: 44.

2. ПОДСТАВИТЬ(A2;"-";REPT(« »,LEN(A2))):

  • ПОВТОР(« »;LEN(A2)): эта функция ПОВТОР создаёт строку из пробелов, длина которой равна количеству символов в ячейке A2.
  • ПОДСТАВИТЬ(A2;"-";ПОВТОР(« »;ДЛСТР(A2))): эта функция ПОДСТАВИТЬ заменяет дефисы в ячейке A2 на строку пробелов, возвращаемую функцией ПОВТОР.

Эта часть формулы используется как аргумент текст в функции ПРАВСИМВ.

3. RIGHT(SUBSTITUTE(A2,"-",REPT(« »,LEN(A2))),LEN(A2)): с помощью функции ПРАВСИМВ извлекается текст с правой части строки, возвращённой функцией ПОДСТАВИТЬ.

4. TRIM(): эта функция СЖПРОБЕЛЫ удаляет все лишние пробелы, оставляя между словами только один.


Используемые связанные функции:

  • RIGHT:
  • Функция ПРАВСИМВ извлекает указанное количество символов с правого конца текстовой строки.
  • SEARCH:
  • Функция НАЙТИ позволяет точно определить позицию нужного символа или подстроки в указанном тексте.
  • LEN:
  • Функция ДЛСТР возвращает количество символов в текстовой строке.
  • SUBSTITUTE:
  • Функция Microsoft Excel ПОДСТАВИТЬ заменяет указанный текст или символы внутри текстовой строки на другие текст или символы.
  • TRIM:
  • Функция СЖПРОБЕЛЫ удаляет все лишние пробелы из текстовой строки, оставляя между словами только по одному пробелу.
  • REPT:
  • Функция ПОВТОР позволяет повторить указанные символы заданное количество раз.

Другие статьи:

  • Извлечение нескольких строк из ячейки
  • Если у вас есть список текстовых строк, разделённых разрывами строк (которые создаются нажатием Alt + Enter при вводе), и вы хотите извлечь эти строки в отдельные ячейки, как показано на скриншоте ниже, — как это можно сделать с помощью формулы в Excel?
  • Извлечение N-го слова из текстовой строки в Excel
  • Если у вас есть список текстовых строк или предложений и вы хотите извлечь из них определённое N-е слово — как показано на скриншоте ниже, — в этой статье я расскажу о нескольких способах решения этой задачи в Excel.
  • Извлечение подстроки из текстовой строки в Excel
  • Возможно, вам часто приходится извлекать подстроки из текстовых строк. В Excel нет прямой функции для этого, но с помощью функций ЛЕВСИМВ, ПРАВСИМВ, ПСТР и НАЙТИ вы можете извлекать различные подстроки по своему усмотрению.

Лучшие инструменты для повышения продуктивности в Office

Kutools для Excel — Помогает вам выделиться из толпы

🤖KUTOOLS AI Помощник: Революционизируйте Анализ данных на основе:Интеллектуальное выполнение   |  Генерация кода|  Создание пользовательские формулы  |  Анализ данных и создание диаграмм|  Вызов Расширенные функции
Популярные функции:Поиск, выделение или Отметить дубликаты  |  Удалить пустые строки  |  Объединить столбцы или ячейки без потери данных  |  Округление без использования формул
Расширенный VLookup:Несколько критериев  |  Несколько значений  |  По нескольким листам  |  Распознавание нечетких соответствий
Расш. Раскрывающийся список:Простой выпадающий список  |  Зависимый выпадающий список  |  Многоэлементный выпадающий список
Управление столбцами:Добавление определённого количества столбцов  |  Перемещение столбцов  |  Переключение видимости скрытых столбцов  |Сравнение столбцов для Выбрать одинаковые/разные ячейки
Избранные функции:Сетка фокусировки  |  Просмотр дизайна  |  Улучшенная строка формулы  |  Управление рабочими книгами и листами|Библиотека ресурсов(автотекст)|  Выбор даты  |  Объединить листы  |  Шифрование/Расшифровать ячейки  |  Отправка писем по списку  |  Супер фильтр  |  Специальный фильтр(Фильтр ячеек с жирным шрифтом/курсив/зачёркивание…) …
Лучшие наборы инструментов 15:12 Текстовыеинструменты(Добавить текст,Удалить определенные символы…)|  50+Типыдиаграмм(Диаграмма Ганта…)|  40+ Практические формулы(Рассчитать возраст на основе даты рождения…)|  19 Инструментывставки(Вставить QR-код,Вставка изображения по пути…)|  12 Инструментыпреобразования(Преобразовать в слова,Конвертация валют…)|  7 Объединить и разделитьинструменты(Расширенное объединение строк,Разделение ячеек Excel…)|…и многое другое
Используйте Kutools на предпочитаемом языке — поддерживает английский, испанский, немецкий, французский, китайский и ещё 40+ языков!

Kutools для Excel предлагает более 300 функций,гарантируя, что всё необходимое всегда под рукой…


Office Tab — Включает вкладки для чтения и редактирования в Microsoft Office (включая Excel)

  • Переключайтесь между десятками открытых документов всего за секунду!
  • Сократите сотни кликов мышью каждый день и забудьте о «мышечной руке».
  • Повышает продуктивность на 50 % при одновременном просмотре и редактировании нескольких документов.
  • Добавляет удобство работы с вкладками в Office (включая Excel) — как в Chrome, Edge и Firefox.