Перейти к основному содержанию

Извлечь текст после последнего экземпляра определенного символа

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


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

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

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

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

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


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

1. LEN (A2) -LEN (ЗАМЕНА (A2; «-», «»)): Эта часть используется для получения количества знаков дефиса в ячейке A2.

  • LEN (A2): Эта функция LEN возвращает общее количество символов в ячейке A2. Он вернет: 44.
  • ПОДСТАВИТЬ (A2; "-"; ""): Эта функция ЗАМЕНА используется для замены всех дефисов ничем. И вы получите такой результат: «InsertDeleterows, листы, изображения, формулы».
  • LEN (ПОДСТАВИТЬ (A2; "-"; ""): Получить общую длину текстовой строки в ячейке A2 без дефисов.
  • LEN (A2) -LEN (ПОДСТАВИТЬ (A2; "-", "")): Вычтите длину текстовой строки без дефисов из общей длины строки, чтобы получить номер дефиса, и получится 2.

2. ЗАМЕНА (A2, «-», «#», LEN (A2) -LEN (ПОДСТАВИТЬ (A2, «-», «»))): Эта функция ЗАМЕНА используется для замены последнего дефиса, возвращенного формулой первой части, на символ #. И вы получите такой результат: «Insert-Delete # строки, листы, изображения, формулы».

3. ПОИСК ("#", ЗАМЕНА (A2, "-", "#", LEN (A2) -LEN (ПОДСТАВИТЬ (A2, "-", ""))))= ПОИСК ("#", "Вставить-Удалить # строк, листов, изображений, формул"): Эта функция ПОИСК вернет позицию символа # в текстовой строке, возвращенной функцией ПОДСТАВКА. Он получит номер 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,"-","")))))= ВПРАВО (A2; 30): Наконец, функция ПРАВО используется для извлечения 30 символов, которые возвращаются формулой на шаге 4 из правой части текстовой строки в ячейке A2.


Ноты:

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

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

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

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


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

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

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

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

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


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

1. LEN (A2): Эта функция LEN возвращает общее количество символов в ячейке A2. Это будет распознано как аргумент num_chars в функции RIGHT. Он вернет: 44.

2. ЗАМЕНА (A2; "-", ПОВТОР ("", LEN (A2))):

  • ПОВТОР (""; LEN (A2): Эта функция REPT используется для получения количества строк пробелов в зависимости от длины ячейки A2.
  • ПОДСТАВИТЬ (A2; "-", ПОВТОР ("", LEN (A2))): Эта функция ЗАМЕНА заменит символы дефиса в ячейке A2 пробелами, возвращаемыми функцией REPT.

Эта формула части будет распознана как текстовый аргумент в функции ПРАВО.

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

4. ОБРЕЗАТЬ (): Эта функция TRIM используется, чтобы удалить все лишние пробелы и оставить только один пробел между словами.


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

  • RIGHT:
  • Функция RIGHT извлекает определенное количество символов из правой части текстовой строки.
  • SEARCH:
  • Функция ПОИСК может помочь вам найти позицию определенного символа или подстроки в заданном тексте.
  • LEN:
  • Функция LEN возвращает количество символов в текстовой строке.
  • SUBSTITUTE:
  • Функция Microsoft Excel SUBSTITUTE заменяет текст или символы в текстовой строке другим текстом или символами.
  • TRIM:
  • Функция TRIM удаляет все лишние пробелы из текстовой строки и сохраняет только отдельные пробелы между словами.
  • REPT:
  • Функция ПОВТОР используется для повторения символов определенное количество раз.

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

  • Извлечь несколько строк из ячейки
  • Если у вас есть список текстовых строк, разделенных разрывами строк (это происходит при нажатии клавиш Alt + Enter при вводе текста), и теперь вы хотите извлечь эти строки текста в несколько ячеек, как показано ниже. Как бы вы могли решить это с помощью формулы в Excel?
  • Извлечь N-е слово из текстовой строки в Excel
  • Если у вас есть список текстовых строк или предложений, теперь вы хотите извлечь конкретное n-е слово из списка, как показано ниже. В этой статье я расскажу о некоторых методах решения этой задачи в Excel.
  • Извлечь подстроку из текстовой строки в Excel
  • Для вас может быть обычной задачей извлекать подстроки из текстовых строк, в Excel нет прямой функции для этого, но с помощью функций LEFT, RIGHT, MID и SEARCH вы можете извлечь виды подстрок по мере необходимости.

Лучшие инструменты для работы в офисе

Kutools for Excel - поможет вам выделиться из толпы

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

Kutools для Excel может похвастаться более чем 300 функциями, Гарантия того, что то, что вам нужно, находится на расстоянии одного клика...


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

  • Одна секунда для переключения между десятками открытых документов!
  • Уменьшите количество щелчков мышью на сотни каждый день, попрощайтесь с рукой мыши.
  • Повышает вашу продуктивность на 50% при просмотре и редактировании нескольких документов.
  • Добавляет эффективные вкладки в Office (включая Excel), как в Chrome, Edge и Firefox.
Comments (3)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
how do you get everything after the last Nth character when there is more 'N' character that you want. Example.

1-2-3-4.ip.linodeusercontent.com.
1.2.3.4.ipv4.supernova.orange.pl.

i want to get the last bit after the IP addresses. So it ends up like this
ip.linodeusercontent.com.
pv4.supernova.orange.pl.
This comment was minimized by the moderator on the site
where "." is my Nth character
This comment was minimized by the moderator on the site
i really what to count the Nth character from the right 2 or 3 times and get everything after that, not counting the Nth character from the left because that varies. such a pain with no skills...lol
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations