#arrays #regex #google-sheets #newline #text-extraction
Вопрос:
Я хочу извлечь только первую строку текста в каждой ячейке. (Извините за скриншоты, я не могу придумать другой способ проиллюстрировать).
Я использую эту формулу в Company
столбце, чтобы найти символ новой строки и извлечь текст слева от него:
=LEFT(G2,Find(Char(10),G2))
Если я вручную пройду и выделю всю ячейку в Description
столбце, а затем нажму enter
на нее, после текста в первой строке будет добавлен символ новой строки, но в противном случае символа новой строки не будет. Отсюда #VALUE
и ошибка. Есть идеи, как массово вставить символ новой строки в каждую ячейку, чтобы существующая функция работала? Открыты и для других решений. Спасибо.
Ответ №1:
вы можете сделать:
=LEFT(G2amp;CHAR(10), FIND(CHAR(10), G2amp;CHAR(10)))
обновление 1:
удалите все в столбце A и используйте это в A1:
={"Company"; INDEX(IFNA(REGEXEXTRACT(B2:B, "(. )n"), B2:B))}
обновление 2:
={"Company"; INDEX(TRIM(IFNA(REGEXEXTRACT(
REGEXREPLACE(B2:B, "(d )", CHAR(10)amp;"$1"), "(. )n"), B2:B)))}
Комментарии:
1. Привет, спасибо! Извините, не знаю, почему я об этом не подумал. Вот лист с образцом docs.google.com/spreadsheets/d/…
2. Спасибо! Я не думаю, что мне было ясно, что я пытаюсь сделать. Мои извинения. Я хочу только извлечь название компании из каждой ячейки в столбце описание. в ячейке A5 на скриншоте я хотел бы видеть только «SERVPRO Бирмингема», а не адрес.
3. Большое вам спасибо! Мне потребуется некоторое время, чтобы понять, что ты здесь сделал! Выглядит великолепно!
4. @JustinBenfit Я искал первый номер и вставил новую строку перед этим номером. затем я извлек все до новой строки
5. Это замечательно @player-0 ! Спасибо за объяснение.