fbpx
Wikipedia

Cadena de caracteres

En programación, una cadena de caracteres, palabras, ristra de caracteres o frase (string, en inglés) es una secuencia ordenada (de longitud arbitraria, aunque finita) de elementos que pertenecen a un cierto lenguaje formal o alfabeto análogas a una fórmula o a una oración. En general, una cadena de caracteres es una sucesión de caracteres (letras, números u otros signos o símbolos). Si no se ponen restricciones al alfabeto, una cadena podrá estar formada por cualquier combinación finita de los caracteres disponibles (las letras de la 'a' a la 'z' y de la 'A' a la 'Z', los números del '0' al '9', el espacio en blanco ' ', símbolos diversos '!', '@', '%', etcétera).

En este mismo ámbito, se utilizan habitualmente como un tipo de dato predefinido, para palabras, frases o cualquier otra sucesión de caracteres. En este caso, se almacenan en un vector de datos, o matriz de datos de una sola fila (array, en inglés). Las cadenas se pueden almacenar de manera física:

  • Seguidas.
  • Enlazados letra a letra.

Generalmente los caracteres se guardan uno a continuación de otro para fines de eficiencia en el acceso.

Un caso especial de cadena es la que contiene cero caracteres. A esta cadena se la llama cadena vacía; en teoría de autómatas, es común representarla por medio de la letra griega .

Operación con cadena de caracteres

Al considerar las cadenas como un tipo de datos, hay que definir cuáles son las operaciones que es posible hacer con ellas. En principio, podrían ser muchas y llegar a ser muy sofisticadas. Las siguientes son algunas de ellas:

  • Asignación: Consiste en asignar una cadena a otra.
  • Concatenación: Consiste en unir dos cadenas o más (o una cadena con un carácter) para formar una cadena de mayor tamaño.
  • Búsqueda: Consiste en localizar dentro de una cadena una subcadena más pequeña o un carácter.
  • Extracción: Se trata de sacar fuera de una cadena una porción de la misma según su posición dentro de ella.
  • Comparación: Se utiliza para comparar dos cadenas.

Representación

Una cadena suele ser representada entre comillas dobles superiores ("palabra"), mientras que un carácter de esa cadena (un char en inglés) suele ser representado entre comillas simples ('p'). Por ejemplo, en C:

charAt c = 'a'; char str[5] = "hola"; 

Generalmente para acceder a un carácter en una posición determinada se suele usar la forma variable[posición] como cuando se accede a un vector.

Para poder mostrar una comilla (") dentro de la cadena y no tener problemas con las comillas que la delimitan, se usan secuencias de escape. Esto se aplica a otros caracteres reservados o no imprimibles como el retorno de carro. No obstante, las expresiones para producir estas secuencias de escape dependen del lenguaje de programación que se esté usando. Una forma común, en muchos lenguajes, de escapar un carácter es anteponiéndole un «\» (sin comillas), p. e.: «\"» (sin comillas).

Cadenas dinámicas y estáticas

Las cadenas pueden ser de naturaleza dinámica (pueden alterar su longitud durante el tiempo de ejecución) o de naturaleza estática (su longitud es fija a lo largo del tiempo de ejecución). En este segundo caso, el programador debe prever que al recorrer la cadena los índices no se vayan de los límites previstos (C no permite que las cadenas crezcan automáticamente de forma explícita, mientras que C# sí).

El final de la cadena se delimita de diferente manera en uno u otro caso:

  • Mediante un carácter de fin de cadena ('\0' en C) para las cadenas de tipo dinámico.
  • Mediante una propiedad de la cadena que delimite su longitud (length en C#) para las de tipo estático.

Ejemplos de operaciones comunes

Asignación

Asignar una cadena a otra.

char *strcpy(char [], const char[]); # en C cadena1=cadena2; # en C++ cadena1 := cadena2 # en Smalltalk 

Concatenación

Unir dos cadenas de caracteres.

pareja = "Joshua" + " y " + "Marina" # en Python $pareja = "Joshua"." y "."Marina" # en Perl y PHP pareja = "Luisa" & " y " & "Carmen" # en Visual Basic pareja = "Luisa" + " y " + "Carmen"; # en C++ y Java con la clase String pareja := 'Luisa' , ' y ' , 'Carmen'. # en Smalltalk strcat(cadena1,cadena2); strcat(cadena1, cadena3); # en C (Debe haber suficiente espacio en la primera.) 

Número de caracteres de una cadena

int strlen(const char[]); # en C Devuelve el n.º de caracteres sin contar el '\0' cadena.length(); # en C++ cadena size. # en Smalltalk len(cadena) # en Python 

Comparación

Comparar dos cadenas en orden lexicográfico.

int strcmp(const char[], const char[]); # en C Devuelve <0 si la 1.ª es menor, > 0 si es mayor y 0 si son iguales. cadena1 == cadena2; cadena1>cadena2; etc. # en C++ Devuelve un valor de verdad. cadena1 = cadena2 # en Smalltalk Devuelve true o false. 

Multiplicar una cadena

Repetir varias veces una cadena.

$puntos ="." x 5 # pone 5 puntos en Perl. puntos := Generator generateJoin: '.' repeat: 5. # Genera una cadena de 5 puntos en Smalltalk. puntos = "." * 5 # Genera una cadena de 5 puntos en Python. 

Enlaces externos

  • Operaciones con cadenas en el lenguaje C)
  •   Datos: Q184754
  •   Multimedia: String (computer science)

cadena, caracteres, programación, cadena, caracteres, palabras, ristra, caracteres, frase, string, inglés, secuencia, ordenada, longitud, arbitraria, aunque, finita, elementos, pertenecen, cierto, lenguaje, formal, alfabeto, análogas, fórmula, oración, general. En programacion una cadena de caracteres palabras ristra de caracteres o frase string en ingles es una secuencia ordenada de longitud arbitraria aunque finita de elementos que pertenecen a un cierto lenguaje formal o alfabeto analogas a una formula o a una oracion En general una cadena de caracteres es una sucesion de caracteres letras numeros u otros signos o simbolos Si no se ponen restricciones al alfabeto una cadena podra estar formada por cualquier combinacion finita de los caracteres disponibles las letras de la a a la z y de la A a la Z los numeros del 0 al 9 el espacio en blanco simbolos diversos etcetera En este mismo ambito se utilizan habitualmente como un tipo de dato predefinido para palabras frases o cualquier otra sucesion de caracteres En este caso se almacenan en un vector de datos o matriz de datos de una sola fila array en ingles Las cadenas se pueden almacenar de manera fisica Seguidas Enlazados letra a letra Generalmente los caracteres se guardan uno a continuacion de otro para fines de eficiencia en el acceso Un caso especial de cadena es la que contiene cero caracteres A esta cadena se la llama cadena vacia en teoria de automatas es comun representarla por medio de la letra griega ϵ displaystyle epsilon Indice 1 Operacion con cadena de caracteres 2 Representacion 3 Cadenas dinamicas y estaticas 4 Ejemplos de operaciones comunes 4 1 Asignacion 4 2 Concatenacion 4 3 Numero de caracteres de una cadena 4 4 Comparacion 4 5 Multiplicar una cadena 5 Enlaces externosOperacion con cadena de caracteres EditarAl considerar las cadenas como un tipo de datos hay que definir cuales son las operaciones que es posible hacer con ellas En principio podrian ser muchas y llegar a ser muy sofisticadas Las siguientes son algunas de ellas Asignacion Consiste en asignar una cadena a otra Concatenacion Consiste en unir dos cadenas o mas o una cadena con un caracter para formar una cadena de mayor tamano Busqueda Consiste en localizar dentro de una cadena una subcadena mas pequena o un caracter Extraccion Se trata de sacar fuera de una cadena una porcion de la misma segun su posicion dentro de ella Comparacion Se utiliza para comparar dos cadenas Representacion EditarUna cadena suele ser representada entre comillas dobles superiores palabra mientras que un caracter de esa cadena un char en ingles suele ser representado entre comillas simples p Por ejemplo en C charAt c a char str 5 hola Generalmente para acceder a un caracter en una posicion determinada se suele usar la forma variable posicion como cuando se accede a un vector Para poder mostrar una comilla dentro de la cadena y no tener problemas con las comillas que la delimitan se usan secuencias de escape Esto se aplica a otros caracteres reservados o no imprimibles como el retorno de carro No obstante las expresiones para producir estas secuencias de escape dependen del lenguaje de programacion que se este usando Una forma comun en muchos lenguajes de escapar un caracter es anteponiendole un sin comillas p e sin comillas Cadenas dinamicas y estaticas EditarLas cadenas pueden ser de naturaleza dinamica pueden alterar su longitud durante el tiempo de ejecucion o de naturaleza estatica su longitud es fija a lo largo del tiempo de ejecucion En este segundo caso el programador debe prever que al recorrer la cadena los indices no se vayan de los limites previstos C no permite que las cadenas crezcan automaticamente de forma explicita mientras que C si El final de la cadena se delimita de diferente manera en uno u otro caso Mediante un caracter de fin de cadena 0 en C para las cadenas de tipo dinamico Mediante una propiedad de la cadena que delimite su longitud length en C para las de tipo estatico Ejemplos de operaciones comunes EditarAsignacion Editar Asignar una cadena a otra char strcpy char const char en C cadena1 cadena2 en C cadena1 cadena2 en Smalltalk Concatenacion Editar Unir dos cadenas de caracteres pareja Joshua y Marina en Python pareja Joshua y Marina en Perl y PHP pareja Luisa amp y amp Carmen en Visual Basic pareja Luisa y Carmen en C y Java con la clase String pareja Luisa y Carmen en Smalltalk strcat cadena1 cadena2 strcat cadena1 cadena3 en C Debe haber suficiente espacio en la primera Numero de caracteres de una cadena Editar int strlen const char en C Devuelve el n º de caracteres sin contar el 0 cadena length en C cadena size en Smalltalk len cadena en Python Comparacion Editar Comparar dos cadenas en orden lexicografico int strcmp const char const char en C Devuelve lt 0 si la 1 ª es menor gt 0 si es mayor y 0 si son iguales cadena1 cadena2 cadena1 gt cadena2 etc en C Devuelve un valor de verdad cadena1 cadena2 en Smalltalk Devuelve true o false Multiplicar una cadena Editar Repetir varias veces una cadena puntos x 5 pone 5 puntos en Perl puntos Generator generateJoin repeat 5 Genera una cadena de 5 puntos en Smalltalk puntos 5 Genera una cadena de 5 puntos en Python Enlaces externos EditarEntrecomillar una cadena Operaciones con cadenas en el lenguaje C Datos Q184754 Multimedia String computer science Obtenido de https es wikipedia org w index php title Cadena de caracteres amp oldid 139809889, wikipedia, wiki, leyendo, leer, libro, biblioteca,

español

, española, descargar, gratis, descargar gratis, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, imagen, música, canción, película, libro, juego, juegos