Как найти символ в calc

SEARCH

Функция возвращает положение строки текста в пределах другой строки.

Синтаксис функции:

=SEARCH(findtext; texttosearch; startposition)

Рис. 1. Пример функции.

где:

  • findtext — искомая текстовая строка;
  • texttosearch — текст, в котором осуществляется поиск;
  • startposition — (необязательный) позиция, с которой начинается поиск.

Функция SEARCH возвращает положение символа из первого появления findtext в пределах texttosearch, начиная с символьной позиции startposition. По умолчанию startposition1, если опущен. Поиск не учитывает регистр.

Поиск будет использовать регулярные выражения, если они разрешены (меню Сервис → Параметры → InfraOffice.pro Calc → Вычисления).

Если найти строку findtext не удалось, возвращается ошибка #VALUE!.

Установка параметра  Условия поиска = и <> должны распространяться на всю ячейку  в диалоговом окне Сервис → Параметры → InfraOffice.pro Calc → Вычисления, не оказывает на поиск никакого эффекта.

На рис. 1:

  • в ячейке B2 возвращается 1. Поиск выполняется без учёта регистра.;
  • в ячейке B6 возвращается 3, если регулярные выражения разрешены. “.” означает любой одиночный символ в регулярном выражении, таким образом “t.n” соответствует “ten”.


BASE
Преобразует положительное целое число
с заданным основанием в текст, выражающий
число в определенной системе
счисления. Используются цифры 0-9 и
буквы A-Z.

Синтаксис:

BASE(Число; Основание; [Минимальная
длина])

Число: положительное целое число
для преобразования.

Основание: основание системы
счисления. Это может быть любое
положительное целое число от 2 до 36.

Минимальная_длина (необязательный
параметр): минимальная длина созданной
последовательности символов. Если текст
короче указанной минимальной длины, в
начало строки добавляются нули.

Пример:

=BASE(17;10;4) возвращает
значение 0017 в десятичной системе
счисления.

=BASE(17;2) возвращает
значение 10001 в двоичной системе счисления.

=BASE(255;16;4) возвращает число 00FF в
шестнадцатеричной системе счисления.




CHAR

Служит для преобразования числа в
символ в соответствии с текущей кодовой
таблицей. Число может быть целым
двухзначным или трехзначным числом.

Коды больше 127 могут зависеть
от системной кодировки (например,
iso-8859-1, iso-8859-2, Windows 1252, Windows 1250) и поэтому
быть непереносимыми.

Синтаксис:

CHAR(Число)

Число: число от 1 до 255, определяющее
кодовое значение символа.

Пример:

=CHAR(100) возвращает символ «d».
=»abc» & CHAR(10) & «def» обеспечивает
вставку символа разрыва строки.




CLEAN

Служит для удаления всех непечатаемых
символов из строки.

Синтаксис:

CLEAN(«Текст»)

Текст: текст, из которого требуется
удалить все непечатаемые символы.




CODE

Возвращает числовой код первого
символа в текстовой строке.

Синтаксис:

CODE(«Текст»)

Текст: текст, для которого требуется
определить код первого символа.

Коды больше 127 могут зависеть
от системной кодировки (например,
iso-8859-1, iso-8859-2, Windows 1252, Windows 1250) и поэтому
быть непереносимыми.

Пример:

=CODE(«Hieronymus») возвращает значение
72, =CODE(«hieroglyphic») возвращает значение
104.




CONCATENATE

Объединяет несколько текстовых
элементов в одну строку.

Синтаксис:

CONCATENATE(«Текст1»; …; «Текст30»)

Текст 1; текст 2; …: до 30 текстовых
элементов, которые требуется объединить
в одну строку.

Пример:

=CONCATENATE(«Доброе «;»утро «;»миссис
«;»Доу») возвращает значение
«Доброе утро, миссис Доу».




DECIMAL

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

Если основание равно 16, первая x, X, 0x
или 0X, а также добавочная h или H не
учитываются. Если основание равно 2,
добавочная b или B не учитывается. При
использовании символов, которые не
принадлежат к указанной системе
счисления, выдается ошибка.

Синтаксис:

DECIMAL(«Текст»; Основание)

Текст: текст для преобразования.
Для определения различия между числом
шестнадцатеричном формате A1 и ссылки
на ячейку A1 число следует заключить в
кавычки, например «A1» или «FACE».

Основание: основание системы
счисления. Это может быть любое
положительное целое число от 2 до 36.

Пример:

=DECIMAL(«17»;10) возвращает значение
17.

=DECIMAL(«FACE»;16) возвращает значение
64206.

=DECIMAL(«0101»;2) возвращает значение
5.




EXACT

Служит для сравнения двух текстовых
строк и возвращает значение TRUE, если
они совпадают. Данная функция учитывает
регистр символов.

Синтаксис:

EXACT(«Текст1»; «Текст2»)

Текст1: первый текст для сравнения.
Текст2: второй текст для сравнения.

Пример:

=EXACT(» microsystems»;» Microsystems»)
возвращает значение FALSE.




FIND

Служит для поиска текстовой строки в
другой строке. Можно также определить
начальную позицию поиска. Искомый
фрагмент может быть числом или любой
строкой символов. Регистр учитывается.

Синтаксис:

FIND(«Искомый текст»; «Текст»;
Позиция)

Искомый_текст: текст для поиска.
Текст: текст, в котором выполняется
поиск.

Позиция (необязательный параметр):
позиция в тексте, с которой начинается
поиск.

Пример:

=FIND(76;998877665544) возвращает значение 6.



LEFT

Возвращает первый символ или символы
текста.

Синтаксис:

LEFT(«Текст»; Число)

Текст: текст, для которого требуется
определить аббревиатуру из начальных
букв.

Число (необязательный параметр):
количество символов в начальном тексте.
Если этот параметр не определен,
возвращается один символ.

Пример:

=LEFT(«вывод»;3) возвращает значение
“out”.




LEN

Возвращает длину строки, включая
пробелы.

Синтаксис:

LEN(«Текст»)

Текст: текст, длину которого
требуется определить.

Пример:

=LEN(«Добрый день») возвращает
значение 14.

=LEN(12345.67) возвращает значение 8.


LOWER

Служит для преобразования заглавных
букв в текстовой строке в строчные.

Синтаксис:

LOWER(«Текст»)

Текст: текст для преобразования.

Пример:

=LOWER(«Солнце») возвращает значение
«солнце».




PROPER

Делает первые буквы всех слов в
текстовой строке прописными.

Синтаксис:

PROPER(«Текст»)

Текст: текст для преобразования.

Пример:

=PROPER(«open office») возвращает значение
Open Office.


REPLACE

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

Текст, содержащий числа, следует
заключать в кавычки, чтобы он не был
распознан как число и автоматически
преобразован в текст.

Синтаксис:

REPLACE(«Текст»; Позиция;
Длина; «Новый текст»)

Текст: текст, часть которого
требуется заменить.

Позиция: начальная позиция для
замены текста.

Длина: количество символов в тексте
для замены.

Новый_текст: текст для замены
исходного текста.

Пример:

=REPLACE(«1234567″;1;1;»444»)
возвращает значение «444234567». Один
символ в позиции 1 заменяется на Новый
текст.

REPT

Служит для повторения строки символов
указанное количество раз.

Синтаксис:

REPT(«Текст»; Число)

Текст: текст для повторения.
Число: количество повторений.
Максимальное количество символов в
результате — 255.

Пример:

=REPT(«Доброе утро»;2) возвращает
значение «Доброе утроДоброе утро».


RIGHT

Возвращает последний символ или
символы текста.

Синтаксис:

RIGHT(«Текст»;Количество)

Текст: текст, из которого требуется
извлечь правую часть.

Число (необязательный параметр):
количество символов в правой части
текста.

Пример:

=RIGHT(«Sun»;2) возвращает значение
«un».


ROMAN

Преобразует числа в римские цифры.
Диапазон значений должен включать числа
от 0 до 3999; режимы обозначаются целым
числом от 0 до 4.

Синтаксис:

ROMAN(Число; Режим)

Число: число для преобразования
в римскую цифру.

Режим (необязательный параметр):
степень упрощения. Чем выше это значение,
тем выше степень упрощения римского
числа.

Пример:

=ROMAN(999) возвращает значение CMXCIX.
=ROMAN(999;0) возвращает значение CMXCIX.
=ROMAN (999;1) возвращает значение LMVLIV.
=ROMAN(999;2) возвращает значение XMIX.
=ROMAN(999;3) возвращает значение VMIV.
=ROMAN(999;4) возвращает значение IM.


SEARCH

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

Поиск поддерживает
регулярные
выражения. Например, можно ввести
«all.*», чтобы найти первое вхождение
«all», за которым следует любое
количество символов. Чтобы выполнить
поиск текста, который также является
регулярным выражением, необходимо
ввести символы перед каждым символом.
Чтобы включить или отключить автоматическую
оценку регулярных выражений, используйте
команду Сервис — Параметры — LibreOffice
Calc — Вычислить.

Синтаксис:

SEARCH(«Искомый текст»;
«Текст»; Позиция)

Искомый_текст: текст для поиска.
Текст: текст, в котором будет
выполняться поиск.

Позиция (необязательный параметр):
позиция в тексте, с которой начинается
поиск.

Пример:

=SEARCH(54;998877665544) возвращает значение 10.



UPPER

Служит для преобразования букв строки
в поле текст в прописные.

Синтаксис

UPPER(«Текст»)

Текст: строчные буквы, которые
требуется преобразовать в прописные.

Пример

=UPPER(«Доброе утро») возвращает
значение ДОБРОЕ УТРО.



























Note to readers: LibreOffice added wildcards and regular expressions, generally compatible with other spreadsheet applications like Excel, around version 5. At the time of this question, I was using the latest version of LO in the Debian repository, which pre-dated that. If you are reading this now, the accepted answer is the best solution. I can think of only one case where you might want to use this answer as an alternative: if you’re stuck with an ancient version of LO Calc (which sometimes happens with some featherweight distros that use custom packages). I’ll leave this answer in place just in case.


Here’s a workaround that uses a helper column (it can be used without a helper column if your version of LO Calc supports SUMPRODUCT, which I’ll show at the end).

example

You can hide column B. Cell B1 contains:

=ISNUMBER(SEARCH("a",A1))*ROW()

Copy that down the column as needed. This provides the row number if the cell contains «a», otherwise zero. The cell address that you want is in D1:

=ADDRESS(SUM(B1:B3),1)

The sum of the matching row and a bunch of zeros gives you the row, and the column is known. You could use these values directly inside a formula rather than creating a text representation of the address.

You can eliminate the helper column with SUMPRODUCT, in which case the formula in D1 would be:

=ADDRESS(SUMPRODUCT(ISNUMBER(SEARCH("a",A1:A3))*ROW(A1:A3)),1)

SUMPRODUCT treats the range as an array and does what the helper column does in one step.

Символ Результат/Использование Любой символ Представление данного символа, если не указано иное. . Представление любого отдельного символа, кроме разрыва строки или
конца абзаца. Например, условие поиска «п.ск» возвращает и «пуск», и
«писк». ^ Возможность найти термин, только если этот термин находится в начале
абзаца. Особые объекты, например, пустые поля или привязанные к символу
врезки, в начале абзаца игнорируются. Пример: «^Петр». $ Возможность найти термин, только если этот термин находится в конце
абзаца. Особые объекты, например, пустые поля или привязанные к символу
врезки, в конце абзаца игнорируются. Пример: «Петр$».
$ сам по себе означает конец абзаца. С его помощью возможно искать и заменять разрывы абзацев. * Поиск нулевого или большего числа символов перед «*». Например, при
поиске «Аб*в» будут найдены «Ав», «Абв», «Аббв», «Абббв» и т. д. + Поиск одного или большего числа символов перед «+». Например, при поиске «AX.+4» будет найдено «AXx4», но не «AX4».
Всегда будет найдена самая длинная возможная строка, соответствующая
данному искомому элементу в абзаце. Если в абзаце содержится строка «AX 4
AX4», выделяется весь фрагмент.  ? Поиск нулевого числа или одного символа перед «?». Например, при
поиске термина «Тексты?» будут найдены «Текст» и «Тексты», а при поиске
«x(ab|c)?y» будут найдены «xy», «xaby» или «xcy». Поиск воспринимает специальные символы после «» как обычные
символы, а не как регулярное выражение (за исключением сочетаний n, t,
> и <). Например, «текст.» находит «текст.», а не «тексты» или
«тексту». n Представление разрыва строки, вставленного с помощью комбинации
клавиш SHIFT+ВВОД. Чтобы изменить разрыв строки на разрыв абзаца,
введите n в поля Найти и Заменить на и выполните поиск и замену.
n в текстовом поле Поиск означает разрыв строки, вставленный с помощью комбинации клавиш Shift+Enter.
n в текстовом поле Заменить означает разрыв абзаца, который можно ввести с помощью клавиши Enter или Return. t Представление знака табуляции. Данное выражение также можно использовать в поле Заменить на. b Match a word boundary. For example, «bbook» finds «bookmark» but
not «checkbook» whereas «bookb» finds «checkbook» but not «bookmark».
The discrete word «book» is found by both search terms. ^$ Поиск пустого абзаца. ^. Поиск первого символа абзаца. & или $0 Добавление строки, найденной с помощью условий поиска в поле Найти, к элементу в поле Заменить на при выполнении замены.
Например, если ввести «авто» в поле Найти и «&трасса» в поле Заменить на, слово «авто» будет заменено словом «автотрасса».
Также можно ввести «&» в поле Заменить на, чтобы изменить Атрибуты или Формат строки, найденной в соответствии с условиями поиска. [абв123] Представление одного из символов, находящихся в скобках. [а-д] Соответствует любому из символов между «a» и «e», включая начальный и конечный символы.
Символы упорядочены по кодовым значениям. [а-де-х] Представление любого символа, находящегося между «а» и «д» или между «е» и «х». [^а-с] Соответствует любому символу, кроме символов между «a» и «s». uXXXX
UXXXXXXXX Represents a character based on its four-digit hexadecimal Unicode code (XXXX).
For obscure characters there is a separate variant with capital U and eight hexadecimal digits (XXXXXXXX).
For certain symbol fonts the code for special characters may depend on the used font. You can view the codes by choosing Insert — Special Character. | Поиск терминов, которые встречаются до «|» и после «|». Например, результатом поиска «этот|тот» будет «этот» и «тот». {2} Определяет допустимое количество вхождений данного символа перед
открывающей скобкой. Например, результатом поиска «сине{2}» также будет
«синева». {1,2} Определяет максимальное и минимальное допустимое количество
вхождений данного символа перед открывающей скобкой. Например,
результатом поиска «сине{1,2}» также будет «синее» и «синева». {1,} Этот параметр определяет, какое минимальное число раз может
встречаться символ перед открывающей скобкой. Например, при поиске
«сине{2,}» будет найдено «синее», «синеее» и «синеееее». ( ) В поле Поиск:
Этот параметр определяет символы внутри скобок как ссылку. После
этого можно ссылаться на первую ссылку в текущем выражении с помощью
«1», на вторую — с помощью «2» и т. д.
Например, если текст содержит число 13487889, то при осуществлении
поиска с использованием регулярного выражения (8)711 будет найдено
«8788».
Также можно использовать скобки () для группировки элементов, например, при поиске «а(бв)?г» будет найдено «аг» или «абвг».
В поле Заменить на:
Для замены ссылок используется знак «$» (доллар) вместо «» (обратная
косая черта). Обозначение «$0» используется для замены всей найденной
строки. [:alpha:] Представление алфавитного символа. [:alpha:]+ позволяет найти один из них. [:digit:] Представление десятичного знака. [:digit:]+ позволяет найти один из них. [:alnum:] Представление алфавитно-цифрового символ ([:alpha:] и [:digit:]). [:space:] Представляет символ пробела (но не другие пробельные символы). [:print:] Представление печатаемого символа. [:cntrl:] Представление непечатаемого символа. [:lower:] Представление строчной буквы, если выбрано значение Учитывать регистр в поле Параметры. [:upper:] Соответствует символу в верхнем регистре, если в менюПараметры выбран параметр Учитывать регистр.

e([:digit:])? — finds ‘e’ followed by zero or one digit. Note that
currently all named character classes like [:digit:] must be enclosed in
parentheses.
^([:digit:])$ — finds lines or cells with exactly one digit.
Для комплексного поиска можно объединить условия поиска.

^[:digit:]{3}$
^ означает поиск совпадения с начала абзаца.
[:digit:] совпадение с любым десятичным знаком.
{3} означает поиск только 3-х цифр.

$ означает окончание поиска совпадения в конце абзаца.

Есть ли в LO Calc функция, которая найдет ячейку с заданным текстом?

Появляются функции поиска и поиска, чтобы указать местоположение в строке. То есть, если я ищу текст «a» в двух ячейках, одна из которых содержит «xxxa», а другая содержит «bbb», ответ будет 4.

Это не то, что мне нужно. Мне нужно найти, в какой ячейке находится рассматриваемый текст.

Просто используйте функцию MATCH() . Поскольку он поддерживает регулярные выражения, вы можете использовать MATCH() для поиска частичных строк.

Вот пример:

Массив поиска — A1:A4 , критерий поиска — .*a.* (Это регулярное выражение, синтаксис см. Ссылку выше). Результат формулы =MATCH(".*a.*";A1:A4;0) равен 2 , поскольку вторая ячейка в массиве поиска — это первая ячейка, которая соответствует шаблону поиска.

РЕДАКТИРОВАТЬ:

Относительно регулярного выражения: вот список символов регулярного выражения. Выражение .*a.* Состоит из:

  • буквальным a соответствующий единый символ;
  • a сопоставляя любой символ;
  • звездочка . , квантификатор, означающий «ноль или более» относительно предыдущего символа.

Таким образом, шаблон регулярного выражения соответствует каждому содержимому ячейки, содержащему a , перед которым следует любое количество других символов. Чтобы ознакомиться с регулярными выражениями, проверьте RegExr или онлайн-тестер регулярных выражений.

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

пример

Вы можете скрыть столбец B. Ячейка B1 содержит:

=ISNUMBER(SEARCH("a",A1))*ROW()

Скопируйте это вниз по столбцу по мере необходимости. Это обеспечивает номер строки, если ячейка содержит «а», иначе ноль. Адрес ячейки, который вы хотите, находится в D1:

=ADDRESS(SUM(B1:B3),1)

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

Понравилась статья? Поделить с друзьями:
  • Антиплагиат подозрительный документ как исправить
  • Как составить видеоролик онлайн
  • Как найти мастер установки windows
  • Как найти место для шиномонтажа
  • Как исправить число на справке незаметно