Main Content

char

Arreglo de caracteres

Descripción

Un arreglo de caracteres es una secuencia de caracteres, así como un arreglo numérico es una secuencia de números. Comúnmente, se utiliza para almacenar un pequeño fragmento de texto como una fila de caracteres en un vector de caracteres.

Creación

Puede crear un vector de caracteres utilizando comillas simples.

C = 'Hello, world'
C =

    'Hello, world'

Si tiene un arreglo de un tipo de datos diferente, puede convertirlo a un arreglo de caracteres utilizando la función char, que se describe más abajo.

Descripción

ejemplo

C = char(A) convierte el arreglo de entrada A en un arreglo de caracteres. Por ejemplo, si A es una cadena "foo", c es un arreglo de caracteres 'foo'.

ejemplo

C = char(A1,...,An) convierte los arreglos A1,...,An en un único arreglo de caracteres. Tras la conversión a caracteres, los arreglos de entrada se convierten en filas en C. La función char rellena las filas con espacios en blanco según sea necesario. Si cualquier arreglo de entrada es un arreglo de caracteres vacío, la fila correspondiente en C será una fila de espacios en blanco.

Los arreglos de entrada A1,...,An no pueden ser arreglos de cadenas, arreglos de celdas o arreglos categóricos.

A1,...,An puede tener diferentes tamaños y formas.

ejemplo

c = char(A, dateFmt), donde A es un arreglo de datetime o duration, aplica el formato especificado, como "HH:mm:ss". También puede especificar la configuración local como una entrada independiente como, por ejemplo, "en_US".

Argumentos de entrada

expandir todo

Arreglo de entrada. El tipo de datos de A determina la forma en que char convierte A en un arreglo de caracteres.

Tipo de entrada

Notas de conversión

Entrada de muestra

Salida de muestra

string

Cada elemento del arreglo de entrada se convierte en una fila en el arreglo de caracteres nuevo, que se rellena automáticamente con espacios en blanco según sea necesario.

Si A está vacío (""), la salida es un arreglo de caracteres vacío, un vector de caracteres de 0 por 0.

1×1 string array
    "foo"

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

Arreglo numérico

char convierte números en caracteres. Los valores numéricos válidos oscilan entre 0 y 65535 y se corresponden con las unidades del código Unicode®. Los valores del 0 al 127 también se corresponden con caracteres ASCII de 7 bits. La función char:

  • Redondea no enteros hacia cero.

  • Trata los valores menores que 0 como 0.

  • Trata los valores mayores que 65535 como 65535.

[102 111 111 33 ]

'foo!'

Arreglo de celdas de vectores de caracteres

Si la entrada es un arreglo de celdas de vectores de caracteres o un arreglo categorical, char convierte la entrada en un arreglo de caracteres. Cada fila de cada elemento del arreglo de entrada se convierte en una fila en el arreglo de caracteres nuevo, que se rellena automáticamente con espacios en blanco según sea necesario.

{'foo','bar'}

2×3 char array

    'foo'
    'bar'

Arreglo categórico

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

    'red  '
    'green'
    'blue '

Arreglo de datetime

Para especificar un formato y configuración local, consulte dateFmt.

datetime(2020,6,1)

'01-Jun-2020'

Los valores faltantes convertidos, como los valores NaN, NaT y <undefined> categóricos, se muestran como ' ', 'NaT' y '<undefined>', respectivamente.

Formato de fecha y configuración local, especificados como vectores de caracteres independientes o escalares de cadena. La entrada A debe ser del tipo datetime, duration o calendarDuration.

Si no especifica un formato, char utiliza el valor de la propiedad Format de A. Para especificar solo la configuración local, utilice un arreglo vacío como marcador de posición para el formato, [].

Ejemplo: char(A, "yyyy-MM-dd")

Ejemplo: char(A, "yyyy-MM-dd","en_US")

Ejemplo: char(A, [],"en_US")

El tipo de formatos compatible depende del tipo de datos de A.

  • Los formatos de datetime pueden incluir combinaciones de unidades y delimitadores, como "yyyy-MMM-dd HH:mm:ss.SSS". Para obtener más información, consulte la propiedad Format para arreglos datetime.

  • Los formatos de duration son de un solo carácter (y, d, h, m o s) o una de las siguientes combinaciones:

    • "dd:hh:mm:ss"

    • "hh:mm:ss"

    • "mm:ss"

    • "hh:mm"

    • Cualquiera de los anteriores, con hasta nueve caracteres S para indicar los dígitos fraccionarios de segundo, como "hh:mm:ss.SSSS"

  • Los formatos de calendarDuration pueden incluir combinaciones de los caracteres y, q, m, w, d y t, en orden de mayor a menor unidad de tiempo, como "ym". Para obtener más información sobre los formatos duration y calendarDuration, consulte Establecer el formato de visualización de fechas y horas.

La configuración local afecta al idioma utilizado para representar determinados componentes de las fechas y horas, como los nombres de los meses. Los valores válidos son:

  • "system", para especificar la configuración local del sistema.

  • Un vector de caracteres de la forma xx_YY, donde xx es un código ISO 639-1 de dos letras minúsculas que especifica un idioma e YY es un código ISO 3166-1 alpha-2 de dos letras mayúsculas que especifica un país. Para ver valores de muestra, consulte el argumento de par nombre-valor Locale de la función datetime.

Argumentos de salida

expandir todo

Arreglo de salida, devuelto como arreglo de caracteres. Los arreglos de caracteres pueden tener cualquier tamaño, pero se utilizan más comúnmente para almacenar fragmentos de texto como vectores de caracteres.

MATLAB® almacena todos los caracteres como caracteres Unicode utilizando la codificación UTF-16. Para obtener más información sobre Unicode, consulte Unicode.

Ejemplos

contraer todo

Convierta un arreglo numérico en un arreglo de caracteres.

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

Los enteros de 32 a 127 se corresponden con los caracteres ASCII imprimibles. Sin embargo, los enteros de 0 a 65535 también se corresponden con caracteres Unicode®. Puede convertir enteros a sus representaciones Unicode correspondientes utilizando la función char.

Por ejemplo, el número 8451 se corresponde con el símbolo para los grados centígrados. Convierta 8451 utilizando char.

C = char(8451)
C = 
'℃'

Convierta múltiples arreglos en un único arreglo de caracteres. No es necesario que los arreglos de entrada tengan la misma forma.

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

Dado que los arreglos de entrada no tienen el mismo número de columnas, char rellena las filas de A1 con espacios en blanco.

whos C
  Name      Size            Bytes  Class    Attributes

  C         3x4                24  char               

Cree un escalar de cadena. Puede crear escalares de cadena utilizando comillas dobles. MATLAB® también muestra cadenas con comillas dobles.

A = "Pythagoras"
A = 
"Pythagoras"

Convierta A en un vector de caracteres utilizando la función char. MATLAB muestra vectores de caracteres con comillas simples.

C = char(A)
C = 
'Pythagoras'

Convierta de un arreglo de duración a char. Para más información relacionada con la conversión de tipos de datos comunes a char, consulte Convert Between Text and datetime or duration Values.

Cree un arreglo de duration.

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

Convierta D en un arreglo de caracteres.

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

C es un arreglo de caracteres que representa un valor de duración por fila.

Especifique el formato de los valores de duración representados por C.

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

Sugerencias

  • Convertir un arreglo char a un tipo numérico producirá un arreglo de los valores de código Unicode correspondientes. El texto de las cadenas no se convierte de esta forma. Convertir una cadena que no representa un valor numérico único a double producirá un resultado NaN. Para obtener más información, consulte Valores Unicode y ASCII.

Capacidades ampliadas

Historial de versiones

Introducido antes de R2006a