'char'

Описание

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

Создание

Можно создать вектор символов с помощью одинарных кавычек.

C = 'Hello, world'
C =

    'Hello, world'

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

Синтаксис

C = char(A)
C = char(A1,...,An)
C = char(D)
C = char(D,fmt)
C = char(D,fmt,locale)

Описание

пример

C = char(A) преобразовывает массив A в символьный массив.

пример

C = char(A1,...,An) преобразовывает массивы A1,...,An в односимвольный массив. После преобразования в символы входные массивы становятся строками в C. Функция char заполняет строки пробелами по мере необходимости. Если какой-либо входной массив является пустым символьным массивом, то соответствующая строка в C является строкой пробелов.

Входные массивы A1,...,An не могут быть строковыми массивами, массивами ячеек или категориальными массивами.

A1,...,An может иметь различные размеры и формы.

пример

C = char(D) преобразовывает datetime, длительность или календарный массив длительности в символьный массив в формате, заданном свойством Format D. Вывод содержит одну дату или длительность в каждой строке.

пример

C = char(D,fmt) представляет даты или длительность в заданном формате, такую как 'HH:mm:ss'.

C = char(D,fmt,locale) представляет даты или длительность в заданной локали, такую как 'en_US'. Локаль влияет на язык, используемый, чтобы представлять векторы символов, такие как дневные имена и месяц.

Входные параметры

развернуть все

Входной массив, заданный как числовой массив, символьный массив, массив ячеек символьных массивов, категориального массива или массива строк.

  • Если A является числовым массивом, то char преобразовывает числа в символы. Допустимые числовые значения колеблются от 0 до 65 535 и соответствуют элементам кода Unicode®. Значения от 0 до 127 также соответствуют 7-битным символам ASCII. Функция char:

    • Нецелые числа раундов к нулю.

    • Значения обработок меньше чем 0 как 0.

    • Значения обработок, больше, чем 65 535 как 65 535.

  • Если A является символьным массивом, то char возвращает неизменный A.

  • Если A является массивом ячеек символьных массивов, то char преобразовывает массив ячеек в символьный массив. Каждая строка от каждого символьного массива в массиве ячеек становится строкой в C, автоматически дополненном пробелами по мере необходимости.

    • Если A является многомерным массивом ячеек, то char сворачивает вывод в двумерный символьный массив. Например, если A является 2 2 массивом ячеек 2 на 2, то выходной символьный массив C имеет 16 строк.

  • Если A является категориальным массивом, то char преобразовывает каждый элемент A к строке символьного массива в порядке следования столбцов.

  • Если A является массивом строк, то char преобразовывает массив строк в символьный массив. char преобразовывает каждый строковый элемент A к вектору символов, и затем конкатенирует векторы, чтобы произвести символьный массив, автоматически дополненный пробелами по мере необходимости. Поскольку char преобразовывает каждую строку в вектор символов, размер выходного символьного массива отличается от размера массива строк.

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

Введите дату и время, заданную как массив длительности или datetime.

Типы данных: datetime | duration | calendarDuration

Формат даты и времени, заданный как [], вектор символов или скаляр строки. Если вы задаете [], то char представляет вход D в формате, заданном свойством Format D.

Поддерживаемые форматы зависят от типа данных D.

  • Форматы datetime могут включать комбинации модулей и разделителей, таких как 'yyyy-MMM-dd HH:mm:ss.SSS'. Для получения дополнительной информации смотрите свойство Format для массивов datetime.

  • Форматы duration являются или отдельными символами ('y', 'd', 'h', 'm', или 's') или одна из этих комбинаций:

    • 'dd:hh:mm:ss'

    • 'hh:mm:ss'

    • 'mm:ss'

    • 'hh:mm'

    • Любое вышеупомянутое, максимум с девятью символами S, чтобы указать на цифры доли секунды, такие как 'hh:mm:ss.SSSS'

  • Форматы calendarDuration могут включать комбинации символов 'y', 'q', 'm', 'w', 'd' и 't' по порядку от самого большого до самого маленького модуля времени, таких как 'ym'.

Для получения дополнительной информации о duration и форматах calendarDuration, смотрите Формат отображения Даты и времени Набора.

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

locale может быть:

  • 'system', чтобы задать вашу системную локаль.

  • Вектор символов в форме, xx_YY, где xx является строчный ISO 639-1 двухбуквенный код, который задает язык и YY, является прописной альфой ISO 3166-1 2 кода, которые задают страну.

Входной параметр locale может какой-либо иметь ценности, принятые аргументом пары "имя-значение" 'Locale' для функции datetime.

Пример: 'en_US'

Пример: 'ja_JP'

Выходные аргументы

развернуть все

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

MATLAB® хранит все символы как символы Unicode с помощью кодирования UTF-16. Для получения дополнительной информации о Unicode смотрите Unicode.

Примеры

свернуть все

Преобразуйте числовой массив в символьный массив.

A = [77 65 84 76 65 66];
C = char(A)
C = 
'MATLAB'

Целые числа от 32 до 127 соответствуют печатаемым символам ASCII. Однако целые числа от 0 до 65 535 также соответствуют символам Unicode®. Можно преобразовать целые числа в их соответствующие представления Unicode с помощью функции char.

Например, номер 8451 соответствует символу для градусов Цельсия. Преобразуйте 8 451 использование char.

C = char(8451)
C = 
'℃'

Преобразуйте несколько массивов в односимвольный массив. Входные массивы не должны иметь той же формы.

A1 = [65 66; 67 68];
A2 = 'abcd';
C = char(A1,A2)
C = 3x4 char array
    'AB  '
    'CD  '
    'abcd'

Поскольку входные массивы не имеют одинакового числа столбцов, char заполняет строки от A1 с пробелами.

whos C
  Name      Size            Bytes  Class    Attributes

  C         3x4                24  char               

Создайте скаляр строки. Начиная в R2017a, можно создать скаляры строки с помощью двойных кавычек. MATLAB® также отображает строки с двойными кавычками.

A = "Pythagoras"
A = 
"Pythagoras"

Преобразуйте A в вектор символов с помощью функции char. MATLAB отображает векторы символов с одинарными кавычками.

C = char(A)
C = 
'Pythagoras'

Создайте массив duration.

D = hours(23:25) + minutes(8) + seconds(1.2345)
D = 1x3 duration array
   23.134 hr   24.134 hr   25.134 hr

Преобразуйте D в символьный массив.

C = char(D)
C = 3x9 char array
    '23.134 hr'
    '24.134 hr'
    '25.134 hr'

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

Задайте формат значений длительности, представленных C.

C = char(D,'hh:mm')
C = 3x5 char array
    '23:08'
    '24:08'
    '25:08'

Расширенные возможности

Представлено до R2006a