Как найти второй пробел в тексте

Например, есть список строк, и каждая ячейка содержит несколько слов, разделенных пробелами, есть ли у вас какие-либо методы, чтобы быстро найти положение первого пробела из этих строк, как показано ниже? В этой статье я расскажу, как легко найти положение n-го пространства в Excel.

Найдите положение n-го пространства по формуле

Удалить начальные / конечные / дополнительные / все пробелы из строкихорошая идея3


Найдите положение n-го пространства по формуле

Чтобы найти положение n-го пробела, вы можете применить эти формулы.

Найдите позицию первого пробела = НАЙТИ («»; A1)
Найдите положение второго пробела = НАЙТИ («»; A1; НАЙТИ («»; A1) +1)
Найдите положение третьего пробела = НАЙТИ («»; A1; НАЙТИ («»; A1; НАЙТИ («»; A1) +1) +1)
Найдите положение четвертого пространства = НАЙТИ («», A1, НАЙТИ («», A1, НАЙТИ («», A1, НАЙТИ («», A1) +1) + 1) +1)

Возьмем, к примеру, положение второго пробела в строках.

Выберите пустую ячейку C2, введите эту формулу = НАЙТИ («»; A2; НАЙТИ («»; A2) +1), затем перетащите дескриптор автозаполнения вниз к ячейке, для которой нужна эта формула. Смотрите скриншот:
док найти пробел, позиция 1


Удалить начальные / конечные / дополнительные / все пробелы из строки

Но в большинстве случаев вам может потребоваться удалить начальные, конечные, дополнительные или все пробелы из списка строк. В Excel нет встроенной функции, которая может ее решить, но с Kutools for Excel — удобный и мощный инструмент для добавления в Excel, его утилита Remove Spaces может быстро выполнять указанные выше операции по мере необходимости.

После бесплатная установка Kutools for Excel, пожалуйста, сделайте следующее:

1. Выберите строки, в которых нужно удалить пробелы, и нажмите Кутулс > Текст > Удалить пробелы. Смотрите скриншот:
док найти пробел, позиция 2

2. в Удалить пробелы диалог, отметьте опцию в Тип пространства как вам нужно, и вы можете просмотреть удаленный результат в предварительный просмотр раздел. Смотрите скриншот:
док найти пробел, позиция 3

3. Нажмите Ok or Применить, теперь из выбранных строк удаляются пробелы.
док найти пробел, позиция 4


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

Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%

  • Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
  • Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон
  • Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны
  • Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
  • Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
  • Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии
  • Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
  • Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF
  • Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.

вкладка kte 201905


Вкладка Office: интерфейс с вкладками в Office и упрощение работы

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!

офисный дно

Комментарии (0)


Оценок пока нет. Оцените первым!

При вводе сложных ФИО, например, Григорьев-Апполонов Пьер-Нарцисс Иванович оглы в в «Отчество» попадает только «оглы». Как найти второй пробел, а не последний?

import java.util.Scanner;

public class Main {

public static void main(String[] args) {

    Scanner scanner = new Scanner(System.in);
    while (true) {
        String input = scanner.nextLine();
        if (input.equals("0")) {
            break;
        }
        if (input.matches("([А-Я][а-я]+(-[А-Я][а-я]+)?\s){2}[А-Я][а-я]+(\s[а-я]+)?")) {
            int spaceIndex = input.indexOf(' ');
            int spaceIndex2 = input.lastIndexOf(' ');
            System.out.println("Фамилия: " + (input.substring(0, spaceIndex)));
            System.out.println("Имя: " + (input.substring(spaceIndex + 1, spaceIndex2)));
            System.out.println("Отчество: " + (input.substring(spaceIndex2 + 1)));
            break;
        } else {
            System.out.println("Вводимая строка не является ФИО");
            break;
        }
    }
}

}

$string = "/kick <user> (time)"; //time is optional, user is required
if (!strpos($string, ' ')) {
    $firstSpace = strlen($string);
} else {
    $firstSpace = strpos($string, ' ');
}

I am designing an AJAX live support chatroom. Using /command i can do things such as ban users, show help etc, but I cannot kick users because of a problem.

To get the <user> I use this below formula to find the first whitespace.
How using php can I get <time> using strpos?

asked Nov 9, 2013 at 13:47

Ben Johnson mk2's user avatar

You can use explode() function:

$string = "/kick <user> (time)"; //because <user> is mandatory whereas (time) is optional
$pieces = explode(" ", $string);
echo $pieces[0]; // kick
echo $pieces[1]; // <user>
echo $pieces[2]; // (time)

answered Nov 9, 2013 at 13:50

Hamed Kamrava's user avatar

Hamed KamravaHamed Kamrava

12.2k34 gold badges87 silver badges125 bronze badges

0

Use the offset parameter:

strpos($string, ' ', strpos($string, ' '));

Official documentation

answered Nov 9, 2013 at 13:52

Joren's user avatar

JorenJoren

3,01224 silver badges43 bronze badges

0

0 / 0 / 0

Регистрация: 18.07.2018

Сообщений: 29

1

Поиск второго пробела в строке, функции =ПОИСК или =НАЙТИ

07.08.2018, 16:07. Показов 17844. Ответов 8


Студворк — интернет-сервис помощи студентам

Всем доброго времени суток. Есть строка

ул. Северная д15

и в ней необходимо определить позицию второго пробела, того, который после названия улицы. Функции =ПОИСК и =НАЙТИ почему-то находят только позицию первого пробела. Пробовал дописывать «+1» к начальной позиции поиска, всё равно не помогает.
Заранее благодарю за помощь!



0



92 / 69 / 16

Регистрация: 22.01.2010

Сообщений: 311

07.08.2018, 16:26

2

Цитата
Сообщение от Testingtest
Посмотреть сообщение

… необходимо определить позицию второго пробела

Цель какая — что? для чего? почему? А если (по правилам) пробелу будет предшествовать запятая?!.



0



772 / 615 / 294

Регистрация: 05.01.2014

Сообщений: 1,338

07.08.2018, 16:31

3

Может так?

Код

=ПОИСК(" ";A1;ПОИСК(" ";A1)+1)



0



0 / 0 / 0

Регистрация: 18.07.2018

Сообщений: 29

07.08.2018, 16:33

 [ТС]

4

AleksSid, да так, но я забыл добавить, что эта строка ул. Северная д.15 находится внутри другого текста. То есть на самом деле это не первый и не второй пробелы. Вот с этим не знаю как поступить.



0



772 / 615 / 294

Регистрация: 05.01.2014

Сообщений: 1,338

07.08.2018, 16:44

5

Выложите пример строк 10-15 текста, что есть и что должно получиться.



0



0 / 0 / 0

Регистрация: 18.07.2018

Сообщений: 29

07.08.2018, 16:45

 [ТС]

6

AleksSid, «Москва, НЗ — 556, ЛР — 0,4 кВ, Секция трансформатора №15, Отходящие линии ВЛ, Р.?, ул. Северная д.15, Учет на опоре правый»

Вот такая строка. Выделил ту часть, в которой интересуют пробелы. Нужно найти номер позиции именно того, который после названия улицы.



0



772 / 615 / 294

Регистрация: 05.01.2014

Сообщений: 1,338

07.08.2018, 17:21

7

Цитата
Сообщение от Testingtest
Посмотреть сообщение

Вот такая строка.

А при чем здесь второй пробел? Вообще не понятно что это вам дает? Можно еще так.

Но не зная что вы хотите, трудно предугадать, потом появятся еще вопросы. Опишите что хотите и приложите файл-пример.



0



0 / 0 / 0

Регистрация: 18.07.2018

Сообщений: 29

07.08.2018, 17:30

 [ТС]

8

AleksSid, вам вообще какая разница что это мне даёт? В общем понятно, если не можете помочь, то и не отвечайте больше.



0



92 / 69 / 16

Регистрация: 22.01.2010

Сообщений: 311

07.08.2018, 17:38

9

Цитата
Сообщение от Testingtest
Посмотреть сообщение

В общем понятно

Не по теме:

OFF Остыньте немного, спокойно подумайте и потрудитесь толково объяснить и на примере (файле) покажите — что, из чего, куда, как желательно вам получить. Когда известна цель, то и проще найти ЦЕЛЕСООБРАЗНЫЕ пути решения вопроса. Согласны?



0



 

YGrigor18

Пользователь

Сообщений: 24
Регистрация: 25.07.2018

Добрый день,
Как в Excel реализовать в строке поиск справа налево?

1). Как найти, между словами второй пробел справа в строке?
2). Как найти в строке определенный символ, например «*» и найти слева от него ближайший пробел?

Поиск слева направо в принципе понятно. И с помощью VBA тоже, а как сделать с помощью функций Excel?

Примеры:
1) яблоко вишня слива персик
Нужно найти справа второй пробел и слева первый и оставить слово «вишня».
Как слева найти все понятно.

2) яблоко вишня слива персик NN*25
где NN — это может быть число из одной или двух цифр.
И надо найти «x» и от него найти позицию первого пробела слева.

В интернете, к сожалению, видел идеи, но решения не нашел.
Спасибо за помощь!

сегодня, 18:00    [21602259]     Ответить | Цитировать Сообщить модератору
 

instrrev
или
strreverse

Программисты — это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!

 

БМВ

Модератор

Сообщений: 21624
Регистрация: 28.12.2016

Excel 2013, 2016

какая разница в какую сторону искать.

общий принцип: например нужен предпоследний пробел
сперва считаются пробелы, потом заменяется пробел на символ невиданный например на CHAR(7)  но естественно не каждый, а только N-1 ю ну и ищется этот символ в полученной строке.
В случае со словом все и сложнее и проще. Только вот самое сложное для вас прочесть правила форума.

Изменено: БМВ25.07.2018 18:30:11

По вопросам из тем форума, личку не читаю.

 

1) Текст в А1
Число_пробелов:
=ДЛСТР(A1)-ДЛСТР(ПОДСТАВИТЬ(A1;» «;»»))

Позиция_2_пробела_справа:
=ПОИСК(«|»;ПОДСТАВИТЬ($A$1;» «;»|»;Число_пробелов-2+1))

Позиция_1_пробела_слева:
=ПОИСК(«|»;ПОДСТАВИТЬ($A$1;» «;»|»;1))

Текст между вторым справа и первым слева пробелом:
=ПСТР(текст;Позиция 1 пробела слева+1;Позиция_2_пробела_справа-Позиция_1_пробела_слева-1)

2) сначала получаем позицию нужного символа при помощи ПОИСК или НАЙТИ, затем при помощи ПСТР получаем кусок текста до этого символа, затем используем этот текст как в первом примере.

 

YGrigor18

Пользователь

Сообщений: 24
Регистрация: 25.07.2018

#5

26.07.2018 10:03:59

Цитата
БМВ написал:
В случае со словом все и сложнее и проще. Только вот самое сложное для вас прочесть правила форума.

Добрый день, спасибо за идеи, попробую реализовать.
На форуме зарегистрировался недавно, но сам сайт и форум знаю давно и он мне нравится.
Правила прочитал.
Вопрос решил задать, так как в поиске нашел отдаленно подобные задачи, в рамках которых решения мне не подошли, к сожалению.
Искал и на других сайтах. Результат аналогичный, вроде решение нащупывалось, но ускользало.
Спасибо за понимание.

 

YGrigor18,  ну если читали почему файл-пример не приложили — уже бы и решение получили возможно.

Не бойтесь совершенства. Вам его не достичь.

 

YGrigor18

Пользователь

Сообщений: 24
Регистрация: 25.07.2018

Добрый день,  спасибо всем за помощь!

все получилось и реально работает :)
Хорошего дня !!!

 

YGrigor18

Пользователь

Сообщений: 24
Регистрация: 25.07.2018

#8

26.07.2018 13:20:04

Цитата
a.i.mershik написал:
Примеры: 1) яблоко вишня слива персикНужно найти справа второй пробел и слева первый и оставить слово «вишня». Как слева найти все понятно.2) яблоко вишня слива персик NN*25где NN — это может быть число из одной или двух цифр.И надо найти «x» и от него найти позицию первого пробела слев

Согласен…, на будущее учту.
Просто написал, что есть текст 1: яблоко вишня слива персик

И есть текст2: яблоко вишня слива персик NN*25
где NN — это может быть число из одной или двух цифр.
И надо найти «x» и от него найти позицию первого пробела слева.

Т

екст 1 или 2

можно поместить в любую ячейку. Например в A1
С первым пунктом все получилось красиво.
Сейчас добиваю с Текстом2, там несколько другие условия …

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

 

YGrigor18

Пользователь

Сообщений: 24
Регистрация: 25.07.2018

#10

26.07.2018 15:36:37

В смысле?

Понравилась статья? Поделить с друзьями:

Не пропустите также:

  • Как составить свою азбуку 1 класс
  • Как найти укуса собак
  • Npm err code e404 как исправить
  • Как найти представление прокуратуры
  • Opengl что это за ошибка как исправить

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии