En informàtica, una cadenaSegons el TERMCAT (en anglès string) és un tipus d'estructura de dades que conté una seqüència de caràcters, paraules, o frases amb un ordre i una llargada determinades, que pertanyen a un cert llenguatge formal o alfabet anàlogues a una fórmula o una oració. En general, és una successió de caràcters (lletres, nombres o altres signes o símbols). Si no es posen restriccions a l'alfabet, una cadena podrà estar formada per qualsevol combinació finita dels caràcters disponibles (les lletres de la 'a' a la 'z' i de la 'A' a la 'Z', els números de l' ' 0 'a l'' 9 ', l'espai en blanc' ', símbols diversos'! ',' @ ','% ', etcètera).
En aquest mateix àmbit, s'utilitzen habitualment com un tipus de dada predefinit, per paraules, frases o qualsevol altra successió de caràcters. En aquest cas, s'emmagatzemen en un vector de dades, o matriu de dades d'una sola fila (array, en anglès). Les cadenes es poden emmagatzemar de manera física: seguides; enllaçats lletra a lletra.
Generalment, els caràcters es guarden un a continuació d'un altre per a fins d'eficiència en l'accés.
Un cas especial de cadena és la que conté zero caràcters. A aquesta cadena la hi crida cadena buida; en teoria d'autòmats, és comú representar per mitjà de la lletra grega
Operacions sobre cadenes Diverses maneres de construir una nova cadena (constructors): Una operació per crear una nova cadena amb un determinat contingut. Una operació per copiar una subcadena o una porció concreta d'una cadena a partir d'una posició determinada amb una llargada determinada (per exemple, strcpy en C o substr en awk). Una operació per concatenar dues cadenes per construir-ne un de més llarg (per exemple, strcat en C, en canvi aquesta operació és implícita en awk).
Diverses operacions de test sobre cadenes: Una operació per comprovar si una cadena és buida (o, cosa que és el mateix, quan la seva llargada és zero). Una operació per obtenir la llargada o el nombre de caràcters que conté una cadena (per exemple, strlen en C o length en awk). Una operació per comparar si dues cadenes són iguals (per exemple, strcmp en C). Una operació per comparar dues cadenes segons l'ordre dels seus caràcters, o el que sol ser el mateix, quina cadena va davant i quin rere en l'ordenació alfabètica (per exemple, strcmp en C). Aquest ordre, però, és dependent del tipus de codificació de caràcters. Una operació per trobar si una subcadena és present dins d'una altra cadena (per exemple, strstr en C o index en awk). Una operació per trobar si una cadena conté una o més correspondències amb una expressió regular (per exemple, match en awk).
Diverses operacions de manipulació del contingut de les cadenes: Una operació per passar les lletres a minúscules o majúscules (per exemple, strlwr o strupr en C, tolower o toupper en awk). Aquesta conversió, però, és dependent del tipus de codificació de caràcters. Una operació per substituir una o més ocurrències d'una subcadena, potser especificat amb expressió regular, dins d'una altra cadena (per exemple, sub o gsub en awk). Una operació per trencar una cadena en porcions segons un delimitador determinat i construir una matriu amb els fragments (per exemple, split en awk).
Referències
Categoria:Variables