char

Описание

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

Создание

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

C = 'Hello, world'
C =

    'Hello, world'

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

Описание

пример

C = char(A)преобразует входной массив, A, к символьному массиву. Например, если A строка, "foo"C символьный массив, 'foo'.

пример

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

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

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

пример

c = char(A, dateFmt), где A datetime или duration массив, применяет заданный формат, такой как "HH:mm:ss". Кроме того, можно задать локаль как отдельный вход, такой как "en_US".

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

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

Входной массив. Тип данных A определяет как char преобразует A к символьному массиву.

InputType

Примечания преобразования

Демонстрационный вход

Демонстрационный Выход

string

Каждый элемент входного массива становится строкой в новом символьном массиве, автоматически дополненном пробелами по мере необходимости.

Если A isempty, выход является пустым символьным массивом, вектором символов 0 на 0.

1×1 string array
    "foo"

1×3 char array
    'foo'
2×1 string array
    "foo"
    "bar"
2×3 char array
    'foo'
    'bar'

Числовой массив

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

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

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

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

[102 111 111 33 ]

'foo!'

Массив ячеек из символьных векторов

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

{'foo','bar'}

2×3 char array

    'foo'
    'bar'

Категориальный массив

1x3 categorical array
    red    green    blue
3×5 char array

    'red  '
    'green'
    'blue '

datetime массив

Чтобы задать формат и локаль, см. dateFmt.

datetime(2020,6,1)

'01-Jun-2020'

Конвертированные отсутствующие значения, такие как NaNNAT, и <undefined> категориальные значения, отображение как <missing>.

Формат даты и локаль в виде отдельных векторов символов или строковых скаляров. Введите A должен иметь тип datetimeдлительность, или calendarDuration.

Если вы не задаете формат, char использует значение в Format свойство A. Чтобы задать только локаль, используйте пустой массив в качестве заполнителя для формата, [].

Пример: char(A, "yyyy-MM-dd")

Пример: char(A, "yyyy-MM-dd","en_US")

Пример: char(A, [],"en_US")

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

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

  • duration форматы являются любой отдельными символами (yDHM, или s) или одна из этих комбинаций:

    • "dd:hh:mm:ss"

    • "hh:mm:ss"

    • "mm:ss"

    • "hh:mm"

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

  • calendarDuration форматы могут включать комбинации символов yQMWD, и t в порядке от самого большого до самого маленького модуля времени, такого как "ym". Для получения дополнительной информации о duration и calendarDuration форматы, смотрите Формат отображения Даты и времени Набора.

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

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

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

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

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

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

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'

Преобразуйте от массива длительности до char. Для получения дополнительной информации связанный с преобразованием из общих данных вводит к char смотрите Преобразуют Между Массивами datetime, Числами и текстом

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

D = hours(23:25) + minutes(8) + seconds(1.2345)
D = 1x3 duration
   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'

Советы

  • Преобразование char массив к числовому типу произведет массив соответствующих кодовых обозначений Unicode. Текст в строках не преобразует таким образом. Преобразование строки, которая не представляет одно числовое значение double произведет NaN результат. Для получения дополнительной информации смотрите Значения ASCII и Unicode.

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

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