stringtranslate.com

Cuerda vacía

En la teoría del lenguaje formal , la cadena vacía , o palabra vacía , es la cadena única de longitud cero.

Teoría formal

Formalmente, una cadena es una secuencia finita y ordenada de caracteres como letras, dígitos o espacios. La cadena vacía es el caso especial en el que la secuencia tiene longitud cero, por lo que no hay símbolos en la cadena. Sólo hay una cadena vacía, porque dos cadenas sólo son diferentes si tienen longitudes diferentes o una secuencia de símbolos diferente. En tratamientos formales, [1] la cadena vacía se denota con ε o, a veces, Λ o λ .

La cadena vacía no debe confundirse con el lenguaje vacío ∅ , que es un lenguaje formal (es decir, un conjunto de cadenas) que no contiene cadenas, ni siquiera la cadena vacía.

La cadena vacía tiene varias propiedades:

En gramáticas libres de contexto , una regla de producción que permite que un símbolo produzca la cadena vacía se conoce como producción ε, y se dice que el símbolo es "anulable".

Uso en lenguajes de programación.

En la mayoría de los lenguajes de programación , las cadenas son un tipo de datos . Las cadenas generalmente se almacenan en distintas direcciones de memoria (ubicaciones). Por tanto, la misma cadena (por ejemplo, la cadena vacía) puede almacenarse en dos o más lugares de la memoria.

De esta manera, podría haber múltiples cadenas vacías en la memoria, en contraste con la definición de la teoría formal, para la cual sólo hay una posible cadena vacía. Sin embargo, una función de comparación de cadenas indicaría que todas estas cadenas vacías son iguales entre sí.

Incluso una cadena de longitud cero puede requerir memoria para almacenarla, según el formato que se utilice. En la mayoría de los lenguajes de programación, la cadena vacía es distinta de una referencia nula (o puntero nulo) porque una referencia nula no apunta a ninguna cadena, ni siquiera a la cadena vacía. La cadena vacía es una cadena legítima, sobre la cual deberían funcionar la mayoría de las operaciones de cadenas. Algunos lenguajes tratan algunos o todos los siguientes de manera similar: cadenas vacías, referencias nulas, el número entero 0, el número de punto flotante 0, el valor booleano falso , el carácter ASCII NUL u otros valores similares.

La cadena vacía suele representarse de forma similar a otras cadenas. En implementaciones con carácter de terminación de cadena ( cadenas terminadas en nulo o líneas de texto sin formato), la cadena vacía se indica mediante el uso inmediato de este carácter de terminación.

Existen diferentes funciones, métodos, macros o modismos para comprobar si una cadena está vacía en diferentes idiomas. [ ejemplo necesario ]

Ejemplos de cadenas vacías

La cadena vacía es una representación sintácticamente válida del cero en notación posicional (en cualquier base), que no contiene ceros a la izquierda . Dado que la cadena vacía no tiene una representación visual estándar fuera de la teoría del lenguaje formal, el número cero se representa tradicionalmente con un solo dígito decimal 0 .

El área de memoria llena de ceros, interpretada como una cadena terminada en nulo , es una cadena vacía.

Las líneas de texto vacías muestran la cadena vacía. Esto puede ocurrir a partir de dos EOL consecutivos , como ocurre a menudo en archivos de texto , y esto a veces se usa en el procesamiento de texto para separar párrafos , por ejemplo, en MediaWiki .

Ver también

Referencias

  1. ^ Corcoran, John; Franco, Guillermo; Maloney, Michael (1974). "Teoria de las cuerdas". Revista de Lógica Simbólica . 39 (4): 625–637. doi :10.2307/2272846. JSTOR  2272846. S2CID  2168826.
  2. ^ Notas de la conferencia CSE1002 - Lexicográfico
  3. ^ Hay dos formas de crear "cadenas vacías" en R; el otro aparece aquí como "". character(0)crea vectores de caracteres vacíos, que generarán 0 cuando se cuenten.
  4. ^ "Cadena en std::string - Rust". doc.rust-lang.org . Consultado el 30 de noviembre de 2022 .