Todos los artículos

Contar caracteres y palabras: por qué no siempre es trivial

Contar caracteres y palabras parece trivial, pero el español tiene un truco propio: los pronombres enclíticos pueden fundir varias palabras gramaticales en un solo token escrito sin espacios.

Pronombres enclíticos: varias palabras en una

En español, los pronombres pueden pegarse al final del verbo en infinitivo, gerundio o imperativo: «dímelo» equivale a «di + me + lo» («dime eso»), tres unidades gramaticales distintas escritas como una sola palabra sin espacio. Un contador de palabras basado en espacios verá «dímelo» como una palabra, mientras que su forma equivalente con el verbo conjugado y pronombres separados podría contarse como varias.

Signos de apertura y el conteo de oraciones

El español es de los pocos idiomas que usa signos de interrogación y exclamación de apertura (¿ ¡) además de los de cierre. Esto no afecta el conteo de palabras, pero sí complica el conteo automático de oraciones: un algoritmo que solo busca el signo de cierre (?, !) para delimitar oraciones funciona igual que en otros idiomas, pero uno que intente detectar dónde «empieza» una pregunta debe reconocer también el signo de apertura.

Tildes y el número de puntos de código

Una palabra como «rápido» puede codificarse con la «á» como un único punto de código precompuesto, o como «a» más un acento agudo combinante separado. Visualmente es idéntica, pero el número de puntos de código Unicode varía según el origen del texto (por ejemplo, texto pegado desde ciertas apps de macOS suele usar la forma descompuesta), lo que puede alterar sutilmente un conteo de caracteres «carácter por carácter».

Para qué sirve

  • Comprobar un texto contra un límite de caracteres (un tuit, un SMS, un campo de formulario).
  • Estimar el tiempo de lectura de un artículo según su número de palabras.
  • Diagnosticar por qué dos frases con el mismo significado dan un conteo de palabras distinto por culpa de la enclisis.

Conteo de palabras en idiomas sin espacios

En chino, japonés o tailandés, las palabras tradicionalmente no se separan con espacios — el límite entre palabras lo define la gramática y el contexto, no un separador. Por eso «contar palabras» en esos idiomas requiere en realidad un algoritmo aparte de segmentación de texto, y un conteo simple basado en espacios ahí dará una sola «palabra» para todo el texto, o directamente perderá el sentido.

Probar la herramienta