Текстовые функции

Этот раздел содержит описания текстовых функций.

Доступ к этой команде

Вставка - Функция - Тип Текст


Использование двойных кавычек в формулах

Для включения текстовой строки в формулу заключите текстовую строку в двойные кавычки (") и Calc разместит символы без попытки их интерпретации. Например, формула ="Здравствуй мир!" отображает текстовую строку Здравствуй мир! в ячейке без каких либо кавычек.

Более сложная формула =СЦЕПИТЬ("На самом деле жизнь проста, "; "но мы старательно усложняем её "; "(Конфуций).") сцепляет три отдельные строки, заключённые в двойные кавычки, получая в итоге строку На самом деле жизнь проста, но мы старательно усложняем её (Конфуций).

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

  1. Символ двойной кавычки можно «экранировать» ещё одним символом двойной кавычки. При этом Calc воспринимает экранированную двойную кавычку в качестве символа. Например, формула ="Меня зовут ""Иван Сидоров""." выведет строку Меня зовут "Иван Сидоров". В качестве другого простого примера можно привести формулу =UNICODE(""""), которая возвращает 34, то есть десятичное значение символа двойной кавычки в Юникод (U+0022) — здесь первая и четвёртая двойные кавычки указывают на начало и завершение строки, а вторая двойная кавычка экранирует третью.

  2. Можно использовать функцию CHAR или функцию UNICHAR для вставки двойных кавычек. Например, формула =UNICHAR(34) & "Над пропастью во ржи" & UNICHAR(34) & " — знаменитая книга Дж. Д. Сэлинджера." отобразит строку "Над пропастью во ржи" — знаменитая книга Дж. Д. Сэлинджера.

Учтите, что функция автозамены в Calc может изменять двойные кавычки. При этом функция автозамены не должна менять двойные кавычки внутри ячеек с формулами, но может изменять двойные кавычки в ячейках с текстом без формул. Например, если скопировать строку, которая заключена в типографические двойные кавычки другой формы, такие как левые двойные кавычки (U+201C) и правые двойные кавычки (U+201D), а затем скопировать их в ячейку с формулой, то это может привести к ошибке. Откройте область Двойные кавычки в диалоговом окне Сервис - Параметры автозамены - Национальные для установки символов, используемых для автоматической корректировки начальных и конечных типографических кавычек. Снимите флажок Заменять для отключения функции.

АРАБСКОЕ

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

ASC

Преобразует двухбайтные символы (полную ширину) в однобайтные (половину ширины) символы ASCII и катакана.

JIS

Преобразует однобайтные символы ASCII (половинной ширины) или символы катакана в двухбайтные символы (полной ширины).

РЕГВ

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

РИМСКОЕ

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

ЗНАЧ

Преобразует строковое представление числа в числовую форму. Если передаваемая строка является действительным значением даты, времени или даты-времени, то возвращается соответствующее порядковое число даты-времени .

ВЕБСЛУЖБА

Получает содержимое веб по URI.

ФИЛЬТР.XML

Примените выражение XPath к документу XML.

КОДИР.URL

Возвращает URL-закодированную строку.

BASE

Converts a positive integer to a specified base into a text from the numbering system. The digits 0-9 and the letters A-Z are used.

Синтаксис

BASE(Number; Radix [; MinimumLength])

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

Radix indicates the base of the numeral system. It may be any positive integer between 2 and 36.

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

Пример

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

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

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

См. также

ДЕС

T

Эта функция возвращает целевой текст либо пустую текстовую строку, если целевая ячейка не содержит текста.

Синтаксис

T(Значение)

Если Значение является текстовой строкой или ссылкой на текстовую строку, T возвращает эту текстовую строку; в противном случае возвращается пустая текстовая строка.

Пример

=T(12345) возвращает пустую строку.

=T("12345") возвращает строку 12345.

UNICODE

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

Синтаксис

UNICODE("Text")

Пример

=UNICODE("©") возвращает код 169, соответствующий символу авторских прав.

tip

См. также функцию ЮНИСИМВ().


БАТТЕКСТ

Преобразует число в текст на тайском языке, включая названия тайской валюты.

Синтаксис

БАТТЕКСТ(Число)

Число: произвольное число. "бат" добавляется к целой части числа, а "сатанг" – к десятичной части числа.

Пример

=БАТТЕКСТ(12,65) возвращает строку в тайских символах со значением «двенадцать бат и шестьдесят пять сатанг».

Техническая информация

This function is not part of the Open Document Format for Office Applications (OpenDocument) Version 1.3. Part 4: Recalculated Formula (OpenFormula) Format standard. The name space is

COM.MICROSOFT.BAHTTEXT

ДЕС

Converts text that represents a number in a numeral system with the given base radix to a positive integer. The radix must be in the range 2 to 36. Spaces and tabs are ignored. The Text field is not case-sensitive.

If the radix is 16, a leading x or X or 0x or 0X, and an appended h or H, are disregarded. If the radix is 2, an appended b or B is disregarded. Other characters that do not belong to the numeral system generate an error.

Синтаксис

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

Text is the text to be converted.

Radix indicates the base of the numeral system. It may be any positive integer between 2 and 36.

Пример

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

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

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

См. также

ОСНОВАНИЕ

ДЛИНБ

For double-byte character set (DBCS) languages, returns the number of bytes used to represent the characters in a text string.

tip

Эта функция доступна начиная с LibreOffice 4.2.


Синтаксис

ДЛИНБ("Текст")

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

Пример

LENB("中") returns 2 (1 DBCS character consisting of 2 bytes).

LENB("中国") returns 4 (2 DBCS characters each consisting of 2 bytes).

LENB("office") returns 6 (6 non-DBCS characters each consisting of 1 byte).

=ДЛИНБ("Добрый день") возвращает 11.

=ДЛИНБ(12345,67) возвращает 8.

ДЛСТР

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

Синтаксис

ДЛСТР("Текст")

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

Пример

=ДЛСТР("Добрый день") возвращает значение 11.

=ДЛСТР(12345,67) возвращает значение 8.

ЗАМЕНИТЬ

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

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

Синтаксис

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

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

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

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

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

Пример

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

КОДСИМВ

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

Синтаксис

КОДСИМВ("Текст")

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

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

Пример

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

note

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


ЛЕВ

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

Синтаксис

LEFT("Text" [; Number])

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

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

Пример

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

ЛЕВБ

Returns the first characters of a DBCS text.

tip

Эта функция доступна начиная с LibreOffice 4.2.


Синтаксис

LEFTB("Text" [; Number_bytes])

Text is the text where the initial partial words are to be determined.

Number_bytes (optional) specifies the number of characters you want LEFTB to extract, based on bytes. If this parameter is not defined, one character is returned.

Пример

=LEFTB("中国";1) returns " " (1 byte is only half a DBCS character and a space character is returned instead).

=LEFTB("中国";2) returns "中" (2 bytes constitute one complete DBCS character).

=LEFTB("中国";3) returns "中 " (3 bytes constitute one DBCS character and a half; the last character returned is therefore a space character).

=LEFTB("中国";4) returns "中国" (4 bytes constitute two complete DBCS characters).

=LEFTB("office";3) returns "off" (3 non-DBCS characters each consisting of 1 byte).

НАЙТИ

Returns the position of a string of text within another string.You can also define where to begin the search. The search term can be a number or any string of characters. The search is case-sensitive.

Синтаксис

FIND("FindText"; "Text" [; Position])

Искомый_текст: текст для поиска.

Текст: текст, в котором выполняется поиск.

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

Пример

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

ПЕЧСИМВ

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

Синтаксис

ПЕЧСИМВ("Текст")

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

Пример

=LEN(CLEAN(CHAR(7) & "LibreOffice Calc" & CHAR(8))) returns 16, showing that the CLEAN function removes the non-printable Unicode U+0007 ("BEL") and U+0008 ("BS") characters at the beginning and end of the string argument. CLEAN does not remove spaces.

ПОВТОР

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

Синтаксис

ПОВТОР("Текст"; Число)

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

Число: количество повторений.

Пример

=ПОВТОР("Доброе утро"; 2) возвращает значение "Доброе утроДоброе утро".

tip

Обратитесь к wiki-странице ПОВТОР для получения более подробной информации об этой функции.


ПОДСТАВИТЬ

Заменяет старый текст в строке на новый.

Синтаксис

SUBSTITUTE("Text"; "SearchText"; "NewText" [; Occurrence])

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

Искомый_текст: текстовый сегмент для замены (неоднократной).

Новый_текст: текст, заменяющий текстовый сегмент.

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

Пример

=ПОДСТАВИТЬ("123123123"; "3"; "abc") возвращает значение "12abc12abc12abc".

=ПОДСТАВИТЬ("123123123"; "3"; "abc"; 2) возвращает значение "12312abc123".

ПОИСК

Returns the position of a text segment within a character string. You can set the start of the search as an option. The search text can be a number or any sequence of characters. The search is not case-sensitive. If the text is not found, returns error 519 (#VALUE).

The search supports wildcards or regular expressions. With regular expressions enabled, you can enter "all.*", for example to find the first location of "all" followed by any characters. If you want to search for a text that is also a regular expression, you must either precede every regular expression metacharacter or operator with a "\" character, or enclose the text into \Q...\E. You can switch the automatic evaluation of wildcards or regular expression on and off in - LibreOffice Calc - Calculate.

warning

When using functions where one or more arguments are search criteria strings that represents a regular expression, the first attempt is to convert the string criteria to numbers. For example, ".0" will convert to 0.0 and so on. If successful, the match will not be a regular expression match but a numeric match. However, when switching to a locale where the decimal separator is not the dot makes the regular expression conversion work. To force the evaluation of the regular expression instead of a numeric expression, use some expression that can not be misread as numeric, such as ".[0]" or ".\0" or "(?i).0".


Синтаксис

SEARCH("FindText"; "Text" [; Position])

Искомый_текст: текст для поиска.

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

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

Пример

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

ПРАВ

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

Синтаксис

RIGHT("Text" [; Number])

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

Number (optional) is the number of characters from the right part of the text. If this parameter is not defined, one character is returned.

Пример

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

ПРАВБ

Returns the last character or characters of a text with double bytes characters sets (DBCS).

tip

Эта функция доступна начиная с LibreOffice 4.2.


Синтаксис

RIGHTB("Text" [; Number_bytes])

Text is the text of which the right part is to be determined.

Number_bytes (optional) specifies the number of characters you want RIGHTB to extract, based on bytes. If this parameter is not defined, one byte is returned.

Пример

RIGHTB("中国";1) returns " " (1 byte is only half a DBCS character and a space character is returned instead).

RIGHTB("中国";2) returns "国" (2 bytes constitute one complete DBCS character).

RIGHTB("中国";3) returns " 国" (3 bytes constitute one half DBCS character and one whole DBCS character; a space is returned for the first half).

RIGHTB("中国";4) returns "中国" (4 bytes constitute two complete DBCS characters).

RIGHTB("office";3) returns "ice" (3 non-DBCS characters each consisting of 1 byte).

ПРОПИСН

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

Синтаксис

ПРОПИСН("Текст")

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

Пример

=ПРОПИСН("Доброе утро") возвращает значение ДОБРОЕ УТРО.

ПРОПНАЧ

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

Синтаксис

ПРОПНАЧ("Текст")

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

Пример

=PROPER("the document foundation") returns The Document Foundation.

ПСТР

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

Синтаксис

ПСТР("Текст"; Начало; Число)

Текст: текст, содержащий символы для извлечения.

Начало: позиция первого символа текста для извлечения.

Число: количество символов в части текста.

Пример

=MID("office"; 2; 2) возвращает значение ff.

ПСТРБ

Returns a text string of a DBCS text. The parameters specify the starting position and the number of characters.

tip

Эта функция доступна начиная с LibreOffice 4.2.


Синтаксис

MIDB("Text"; Start; Number_bytes)

Текст: текст, содержащий символы для извлечения.

Start is the position of the first character in the text to extract.

Number_bytes specifies the number of characters MIDB will return from text, in bytes.

Пример

=MIDB("中国";1;0) returns "" (0 bytes is always an empty string).

=MIDB("中国";1;1) returns " " (1 byte is only half a DBCS character and therefore the result is a space character).

=MIDB("中国";1;2) returns "中" (2 bytes constitute one complete DBCS character).

=MIDB("中国";1;3) returns "中 " (3 bytes constitute one and a half DBCS character; the last byte results in a space character).

=MIDB("中国";1;4) returns "中国" (4 bytes constitute two complete DBCS characters).

=MIDB("中国";2;1) returns " " (byte position 2 is not at the beginning of a character in a DBCS string; 1 space character is returned).

=MIDB("中国";2;2) returns " " (byte position 2 points to the last half of the first character in the DBCS string; the 2 bytes asked for therefore constitutes the last half of the first character and the first half of the second character in the string; 2 space characters are therefore returned).

=MIDB("中国";2;3) returns " 国" (byte position 2 is not at the beginning of a character in a DBCS string; a space character is returned for byte position 2).

=MIDB("中国";3;1) returns " " (byte position 3 is at the beginning of a character in a DBCS string, but 1 byte is only half a DBCS character and a space character is therefore returned instead).

=MIDB("中国";3;2) returns "国" (byte position 3 is at the beginning of a character in a DBCS string, and 2 bytes constitute one DBCS character).

=MIDB("office";2;3) returns "ffi" (byte position 2 is at the beginning of a character in a non-DBCS string, and 3 bytes of a non-DBCS string constitute 3 characters).

РУБЛЬ

Converts a number to a string representing the amount in the currency format, rounded to a specified decimal places, using the decimal separator that corresponds to the current locale setting. In the Value field enter the number to be converted. Optionally, you may enter the number of decimal places in the Decimals field. If no value is specified, all numbers in currency format will be displayed with two decimal places.

Денежный формат задаётся в системных параметрах.

Синтаксис

DOLLAR(Value [; Decimals])

Значение: число, ссылка на ячейку, содержащую число, или формула, возвращающая число.

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

Пример

=DOLLAR(255) returns $255.00 for the English (USA) locale and USD (dollar) currency; ¥255.00 for the Japanese locale and JPY (yen) currency; or 255,00 € for the German (Germany) locale and EUR (euro) currency.

=DOLLAR(367.456;2) returns $367.46.

СЖПРОБЕЛЫ

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

Синтаксис

СЖПРОБЕЛЫ("Текст")

Text refers to text in which spaces are to be removed.

Пример

=TRIM(" hello world ") returns hello world without leading and trailing spaces and with single space between words.

СИМВОЛ

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

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

Синтаксис

СИМВОЛ(Число)

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

Пример

=CHAR(100) возвращает символ "d".

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

СОВПАД

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

Синтаксис

СОВПАД("Текст1"; "Текст2")

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

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

Пример

=СОВПАД(" microsystems"; " Microsystems") возвращает значение ЛОЖЬ.

СТРОЧН

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

Синтаксис

СТРОЧН("Текст")

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

Пример

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

СЦЕПИТЬ

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

Синтаксис

СЦЕПИТЬ(Строка 1 [; Строка 2 [; … [; Строка 255]]])

String 1[; String 2][; … ;[String 255]] are strings or references to cells containing strings.

Пример

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

ТЕКСТ

Converts a value into text according to a given format.

Синтаксис

TEXT(Value; Format)

Value is the value (numerical or textual) to be converted.

Формат: текст для определения формата. Используйте разделители разрядов в соответствии с параметром языка, установленным для формата ячейки.

Пример

=TEXT(12,34567; "###,##") возвращает текст 12,35.

=TEXT(12,34567; "000.00") возвращает текст 012,35.

=TEXT("xyz";"=== @ ===") returns the text === xyz ===

tip

See also Number format codes: custom format codes defined by the user.


ФИКСИРОВАННЫЙ

Returns a number as text with a specified number of decimal places and optional thousands separators.

Синтаксис

FIXED(Number; [Decimals = 2 [; NoThousandsSeparators = FALSE]])

Number is rounded to Decimals places (after the decimal separator) and the result formatted as text, using locale-specific settings.

Decimals (optional) refers to the number of decimal places to be displayed. If Decimals is negative, Number is rounded to ABS(Decimals) places to the left from the decimal point. If Decimals is a fraction, it is truncated actually ignoring what is the closest integer.

NoThousandsSeparators (optional) determines whether the thousands separator is used. If it is TRUE or non-zero, then group separators are omitted from the resulting string. If the parameter is equal to 0 or if it is missing altogether, the thousands separators of your current locale setting are displayed.

Пример

=FIXED(1234567,89; 3) возвращает значение 1 234 567,890 в виде текстовой строки.

=FIXED(123456.789;;TRUE) returns 123456.79 as a text string.

=FIXED(12345.6789;-2) returns 12,300 as a text string.

=FIXED(12134567.89;-3;1) returns 12135000 as a text string.

=FIXED(12345.789;3/4) returns 12,346 as a text string.

=FIXED(12345.789;8/5) returns 12,345.8 as a text string.

ЮНИСИМВ

Преобразование кодового номера в символ Unicode или букву.

Синтаксис

ЮНИСИМВ(число)

Пример

=ЮНИСИМВ(169) возвращает символ авторских прав ©.

tip

См. также функцию UNICODE().