Spec-Zone.ru › Octave 8

5.3.1 Общие операции со строками

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

: y = tolower (s) ¶
: y = lower (s) ¶

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

Например:

tolower ("MiXeD cAsE 123")
      ⇒ "mixed case 123"

Примечание по программированию: lower является псевдонимом для tolower, и любое из этих имён можно использовать в Octave.

См. также: toupper.

: y = toupper (s) ¶
: y = upper (s) ¶

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

Например:

toupper ("MiXeD cAsE 123")
      ⇒ "MIXED CASE 123"

Примечание по программированию: upper является псевдонимом для toupper, и любое из этих имён можно использовать в Octave.

См. также: tolower.

: s = deblank (s) ¶

Удаляет хвостовые пробелы и нули из s.

Если s является матрицей, deblank обрезает каждую строку до длины самой длинной строки. Если s является ячейкой строк, то операция выполняется рекурсивно для каждого элемента строки.

Примеры:

deblank ("    abc  ")
     ⇒  "    abc"

deblank ([" abc   "; "   def   "])
     ⇒  [" abc  " ; "   def"]

См. также: strtrim.

: s = strtrim (s) ¶

Удаляет начальные и конечные пробелы из s.

Если s является матрицей, strtrim обрезает каждую строку до длины самой длинной строки. Если s является ячейкой строк, то операция выполняется рекурсивно для каждого элемента строки.

Например:

strtrim ("    abc  ")
     ⇒  "abc"

strtrim ([" abc   "; "   def   "])
     ⇒  ["abc  "  ; "  def"]

См. также: deblank.

: s = strtrunc (s, n) ¶

Усекает строку символов s до длины n.

Если s является матрицей символов, то количество столбцов корректируется.

Если s является ячейкой строк, то операция выполняется для каждого элемента ячейки, и возвращается новая ячейка.

: str = untabify (t) ¶
: str = untabify (t, tw) ¶
: str = untabify (t, tw, deblank) ¶

Заменяет символы TAB в t на пробелы.

Входные данные t могут быть двумерным массивом символов или ячейкой строковых символов. Выходной тип совпадает с типом входных данных.

Ширина табуляции задаётся tw и по умолчанию равна восьми.

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

Следующий пример читает файл и записывает нетабулированную версию того же файла с удалёнными хвостовыми пробелами.

fid = fopen ("tabbed_script.m");
text = char (fread (fid, "uchar")');
fclose (fid);
fid = fopen ("untabified_script.m", "w");
text = untabify (strsplit (text, "\n"), 8, true);
fprintf (fid, "%s\n", text{:});
fclose (fid);

См. также: strjust, strsplit, deblank.

: newstr = do_string_escapes (string) ¶

Преобразует последовательности экранирования в string в соответствующие символы.

Последовательности экранирования начинаются с ведущей обратной косой черты ('\') и следуют за ней от 1 до 3 символов (например, "\n" => новая строка).

См. также: undo_string_escapes.

: newstr = undo_string_escapes (string) ¶

Преобразует специальные символы в string обратно в их экранированные формы.

Например, выражение

bell = "\a";

присваивает значение символа оповещения (control-g, ASCII-код 7) переменной строки bell. Если эта строка выводится на экран, система просигнализирует об этом (если это возможно). Обычно это желаемый результат. Однако иногда полезно иметь возможность выводить исходное представление строки, где специальные символы заменены их последовательностями экранирования. Например,

octave:13> undo_string_escapes (bell)
ans = \a

заменяет непечатаемый символ оповещения его печатаемым представлением.

См. также: do_string_escapes.

© 1996–2023 The Octave Project Developers
Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies.
Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, provided that the entire resulting derived work is distributed under the terms of a permission notice identical to this one.
Permission is granted to copy and distribute translations of this manual into another language, under the above conditions for modified versions.
https://docs.octave.org/v8.1.0/Common-String-Operations.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API