• Saltar al contenido principal
  • Skip to secondary menu
  • Saltar a la barra lateral principal
  • Saltar al pie de página
  • Inicio
  • Secciones
    • Ciencia de datos
    • Criptografía
    • Herramientas
    • Machine Learning
    • Noticias
    • Opinión
    • Productividad
    • Programación
      • JavaScript
      • Julia
      • Matlab
      • Python
      • R
  • Programación
    • JavaScript
    • Julia
    • Matlab
    • Python
    • R
  • Laboratorio
    • Estadística
      • Calculadora del Tamaño Muestral en Encuestas
      • Calculadora de estadísticos descriptivos
      • Test de normalidad
      • Calculadora de contrastes de hipotesis
      • Calculadora de tamano del efecto
      • Simulador de Regresión Lineal con Ruido
      • Visualizador de PCA
      • Visualizador de Series Temporales
      • Simulador de Regresión Logística
      • Simulador de K-Means
      • Simulador de DBSCAN
      • Detector de la Ley de Benford
      • Ajuste de Curvas
      • Calculadora de Matrices
    • Probabilidad
      • Calculadora de Probabilidad de Distribuciones
      • Calculadora de Probabilidades de Lotería
      • Simulador del Problema de Monty Hall
      • Simulador de la Estrategia Martingala
    • Finanzas
      • Calculadora de Préstamos e Hipotecas
      • Conversor TIN ↔ TAE
      • Calculadora DCA con ajuste por inflación
      • Calculadora XIRR con Flujos Irregulares
      • Simulador FIRE (Financial Independence, Retire Early)
    • Negocios
      • CLV
      • Scoring
    • Herramientas
      • Formateador / Minificador de JSON
      • Conversor CSV ↔ JSON
      • Comparador y Formateador de Texto y JSON
      • Formateador y Tester de Expresiones Regulares
      • Inspector de JWT
      • Generador y verificador de hashes
      • Codificador / Decodificador Base64 y URL
      • Conversor de bases numericas
      • Conversor de Timestamp Unix
      • Conversor de colores
      • Generador de UUIDs
    • Juegos
      • Tres en Raya
      • Nim con Q-Learning
    • Más
      • Método D’Hondt
      • Generador de Contraseñas Seguras
  • Noticias
  • Boletín
  • Contacto
  • Tienda
    • Libros
    • Equipamiento de oficina
    • Equipamiento en movilidad

Analytics Lane

Ciencia e ingeniería de datos aplicada

  • Ciencia de datos
  • Machine Learning
  • IA Generativa
  • Python
  • Pandas
  • NumPy
  • R
  • Excel

Cadenas de texto en Julia (3ª parte – ¡Hola Julia!)

julio 21, 2020 Por Daniel Rodríguez Deja un comentario
Tiempo de lectura: 6 minutos

Las cadenas de texto en Julia son secuencias de caracteres ordenadas, algo similar a los que sucede en el resto de los lenguajes. Lo que las convierte en un tipo de dato especial. Aunque en Julia tenemos una ventaja, la que se puede en algunos casos volver un inconveniente, que es la posibilidad de trabajar con Unicode. Evitando problemas a la hora de usar caracteres que no existen en inglés.

Tabla de contenidos

  • 1 Comillas dobles y comillas simple
  • 2 Accediendo a los elementos de una cadena de caracteres
  • 3 Subcadenas de texto
  • 4 Cadenas con Unicode
    • 4.1 Iterar en cadenas con símbolos Unicode
  • 5 Identificar elementos dentro de una cadena
    • 5.1 Identificar subcadenas en cadena
      • 5.1.1 Primera posición
      • 5.1.2 Siguientes posiciones
  • 6 Concatenación de cadenas
  • 7 Interpolación de cadenas
  • 8 Grandes posibilidades con las cadenas de texto en Julia
  • 9 Publicaciones de la serie ¡Hola Julia!

Comillas dobles y comillas simple

Lo primero que debemos saber a la hora de crear cadenas de carácter en Julia es que estas se crean encerrando los caracteres entre comillas dobles. Las comillas simples solamente se pueden usar para un carácter. Lo que tiene algunas consecuencias a la hora de trabajar, ya que no es lo mismo "a" que 'a'. La primera es una cadena de caracteres y la segunda es único carácter.

"a" == 'a' # false

Usar comillas sencillas para encerrar más de un carácter dará un error de sintaxis, esto es 'hola' parará la ejecución del código.

Por lo que es importante diferenciar el uso de "" para cadenas de caracteres y '' para caracteres.

Accediendo a los elementos de una cadena de caracteres

Para acceder a los elementos de una cadena de caracteres se ha de indicar el nombre de la variable y entre corchetes la posición del elemento al que se desea acceder. Por ejemplo

La caverna del consumo, o cómo Greenspan miraba calzoncillos para hacer política monetaria – El bestiario de los indicadores económicos absurdos (parte 1)
En Analytics Lane
La caverna del consumo, o cómo Greenspan miraba calzoncillos para hacer política monetaria – El bestiario de los indicadores económicos absurdos (parte 1)

var = "hola"
var[1] # 'h'
var[2] # 'o'

Lo primero es que la primera posición comienza en un 1, al igual que sucede en Matlab, no en 0 como puede ser el caso de Python. Así que el último elemento es igual a la longitud de la cadena, valor que se puede obtener con length(var). Aunque si lo que se quiere es acceder al elemento se puede usar la palabra reservado end

var[length(var)]
var[end]

En ambos casos se accede a la ‘a’.

Publicidad


Subcadenas de texto

Las subcandenas de texto se pueden obtener utilizando el operador dos puntos (:). Operador que es familiar para los que trabajan con Matlab. En lugar de pasar un numero se puede pasar la primera posición, dos puntos y la última posición de la cadena.

var[2:3] # "ol"

Para los que vienen de Python en el caso de Julia sí que se incluye el último elemento cuando se genera la lista. Si queremos ir siempre hasta la última posición, se puede usar el comando end, sin que sea necesario que calculemos antes cuál es la última posición.

var[2:end] # "ola"

Cadenas con Unicode

Los símbolos Unicode también pueden formar parte de una cadena de caracteres.

var = "🍐 es una pera"

Aunque en estos casos hay que tener cuidado, ya que los símbolos Unicode ocupan cuatro posiciones en lugar de una. Intentar acceder a una posición intermedia de las ocupadas por un símbolo Unicode producirá un error, por lo que se debería evitar esto. Esto es, en la cadena de ejemplo el símbolo de la pera esta en la posición 1, el primer espacio esta en la posición 5 e intentar acceder a las posiciones 2, 3 o 4 dará un error. Esto es:

var[1] # '🍐'
var[2] # StringIndexError
var[5] # ' '

Por lo que es importante evitar acceder a estas posiciones de la cadena.

Iterar en cadenas con símbolos Unicode

Para iterar en cadenas con símbolos Unicode debemos usar algunas de las funciones que ofrece Julia, entre las que destacan firstindex para obtener la primera posición y nextind para obtener la siguiente y sizeofpara obtener el tamaño de la cadena (length nos da el número de caracteres, no la longitud de la cadena). Así se puede usar un bucle while (bucle cuya sintaxis básica es exactamente igual que en Matlab) para iterar sobre una cadena

frutas = "🍌 🍎 🍐"

index = firstindex(frutas)
while index <= sizeof(frutas)
    println(fruits[index])
    index = nextind(frutas, index)
end

Publicidad


Identificar elementos dentro de una cadena

Para saber si un carácter existe dentro de una cadena de texto se puede usar el operador in (o alternativamente el símbolo ∈ que se pude conseguir con in). Así para saber si una cadena contiene la letra ‘a’ se puede usar

'a' ∈ "hola"  # true
'a' ∈ "Adios" # false

Es importante notar que no se puede usar comillas dobles en este caso, ya que tendríamos un error.

"la" ∈ "hola" # Error

Lo que hace necesario funciones nativas de Julia para estos casos.

Identificar subcadenas en cadena

Par identifica la posición de subcadenas tenemos dos funciones principales findfirst y findnext. La primera nos permite encontrar la primera ocurrencia de una cadena y la segunda la siguiente a partir de una posición dada. En ambos casos, cuando la subcadena existe devolverá la posición de esta, la posición inicial y la final, si no existe una subcadena que cumpla la condición devolverán el valor nothing. Es importante notar que en la línea de comandos de Julia el valor nothing no mostrará, es necesario usar la función show() para poder ver el valor.

a = nothing
a # No se verá nada en la pantalla

Para confirmar que a contiene nothing se debería usar la siguiente instrucción

show(a)

Primera posición

La primera posición de una subcadena se puede obtener con la función findfirst a la que se le pasa como primeros parámetros la cadena a buscar y como segundo la cadena dónde buscar.

findfirst("la", "Hola Julia") # 3:4
findfirst("ha", "Hola Julia") # nothing

Siguientes posiciones

Para conocer las siguientes posiciones de una subcadena en una cadena se debería usar la función findnext. El primer parámetro de esta función es la cadena que buscar, el segundo es la cadena en la que buscar y la tercera es la primera posición para buscar.

findnext("a", "Hola Julia", 1) # 4:4
findnext("a", "Hola Julia", 4) # 4:4
findnext("a", "Hola Julia", 5) # 10:10

En los ejemplos se puede ver cómo se busca la subcadena desde la primera posición que se ha indicado, incluyendo esta. Algo importante a la hora de buscar más de una posición.

Concatenación de cadenas

Las cadenas de texto se concatenan con operador ‘*’, generando una nueva cadena. De forma análoga a las operaciones algebraicas es posible usar el operar ^ para repetir una misma cadena más de una vez. Así se puede obtener

"Hola" * " " * "Mundo" # "Hola Mundo"
"Hola" ^ 3 # "HolaHolaHola"

Publicidad


Interpolación de cadenas

En los casos más sencillos la concatenación de cadenas puede ser suficiente, pero para crear cadenas más complejas una mejor solución es usar interpolación. Lo que nos permite introducir en una cadena de texto el resultado de cualquier variable u operación que podamos hacer con Julia. Para lo que se usa el comando el operador $ dentro de una cadena

mundo = "mundo"
"Hola $mundo" # "Hola mundo"

Además de esto se puede usar paréntesis para envolver cualquier variable u operación que se desee reemplazar dentro de la cadena.

"El valor de 1+2 es $(1+2)" # "El valor de 1+2 es 3"

Algo que nos ofrece muchas posibilidades a la hora de generar mensaje en nuestros programas.

Grandes posibilidades con las cadenas de texto en Julia

Julia ofrece muchas posibilidades a la hora de trabajar con cadenas de texto. Partiendo del hecho de trabajar de forma nativa con texto Unicode, lo que en otros lenguajes puede ser un problema. Aunque esto también tiene un precio, al existir caracteres que ocupan una posición o cuatro en la cadena nos encontramos que necesario tomar precauciones cuando se trabaja con estos objetos.

Publicaciones de la serie ¡Hola Julia!

  1. ¡Hola Julia!
  2. Primeros pasos con Julia
  3. Cadenas de texto en Julia
  4. Bucles en Julia
  5. Funciones en Julia
  6. Vectores, tuplas y diccionarios en Julia
  7. Estructuras en Julia
  8. Utilizar los tipos en Julia
  9. Tipos de datos en Julia
  10. Tipos y funciones paramétricos en Julia
  11. Introducción a los DataFrames en Julia
  12. Obtener información básica de los DataFrames de Julia
  13. El tipo de dato Missing de Julia
  14. Columnas en DataFrames de Julia
  15. Filas en DataFrames de Julia
  16. Combinar DataFrames en Julia
  17. Guardar y leer archivos CSV en Julia
  18. Guardar y leer archivos Excel en Julia
  19. Introducción a Genie
  20. Libros sobre Julia

¿Te ha parecido de utilidad el contenido?

¡Puntúalo entre una y cinco estrellas!

Puntuación promedio 0 / 5. Votos emitidos: 0

Ya que has encontrado útil este contenido...

¡Síguenos en redes sociales!

¡Siento que este contenido no te haya sido útil!

¡Déjame mejorar este contenido!

Dime, ¿cómo puedo mejorar este contenido?

Publicidad


Publicaciones relacionadas

  • La caverna del consumo, o cómo Greenspan miraba calzoncillos para hacer política monetaria – El bestiario de los indicadores económicos absurdos (parte 1)
  • La vanidad del paisaje, o por qué un becario sale a contar grúas a Manhattan – El bestiario de los indicadores económicos absurdos (parte 2)
  • Analytics Lane lanza la versión 1.1 del laboratorio con nuevas suites de CLV y Scoring
  • Cómo comparar tendencias con gráficos de líneas en Matplotlib: guía práctica paso a paso
  • Analytics Lane lanza la versión 1.2 del laboratorio con nuevas herramientas de ajuste de curvas y cálculo matricial
  • Subplots en Matplotlib: cómo organizar múltiples gráficos en una sola figura
  • Ley de Benford: cómo detectar datos manipulados con ejemplos reales
  • Síndrome del objeto brillante en ciencia de datos: el error simétrico a los costes hundidos
  • De la Regresión Logística al Scorecard: La Transformación Matemática

Publicado en: Julia

Interacciones con los lectores

Deja una respuesta Cancelar la respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

I accept the Terms and Conditions and the Privacy Policy

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Barra lateral principal

Suscríbete a nuestro boletín

Suscríbete al boletín semanal para estar al día de todas las publicaciones.

Política de Privacidad

Analytics Lane en redes sociales

  • Amazon
  • Bluesky
  • Facebook
  • GitHub
  • Instagram
  • Mastodon
  • Pinterest
  • RSS
  • Telegram
  • Tumblr
  • Twitter
  • YouTube

Publicidad

Entradas recientes

Noticias

Analytics Lane lanza la versión 1.2 del laboratorio con nuevas herramientas de ajuste de curvas y cálculo matricial

junio 12, 2026 Por Daniel Rodríguez

La vanidad del paisaje, o por qué un becario sale a contar grúas a Manhattan – El bestiario de los indicadores económicos absurdos (parte 2)

junio 11, 2026 Por Daniel Rodríguez

Cómo comparar tendencias con gráficos de líneas en Matplotlib: guía práctica paso a paso

junio 9, 2026 Por Daniel Rodríguez

Publicidad

Es tendencia

  • Método del codo (Elbow method) para seleccionar el número óptimo de clústeres en K-means publicado el junio 9, 2023 | en Ciencia de datos
  • Probabilidad básica: cómo entender el azar en nuestra vida diaria publicado el junio 24, 2025 | en Ciencia de datos, Opinión
  • Cómo solucionar problemas de red en VirtualBox: Guía completa publicado el junio 11, 2025 | en Herramientas
  • Cómo dar formato a datos en Pandas publicado el junio 17, 2024 | en Python
  • Operaciones de filtrado de DataFrame con Pandas en base a los valores de las columnas publicado el mayo 10, 2019 | en Python

Publicidad

Lo mejor valorado

4.9 (24)

Seleccionar filas y columnas en Pandas con iloc y loc

4.6 (16)

Archivos JSON con Python: lectura y escritura

4.4 (14)

Ordenación de diccionarios en Python mediante clave o valor

4.7 (13)

Operaciones de filtrado de DataFrame con Pandas en base a los valores de las columnas

4.9 (11)

Pandas: Cambiar los tipos de datos en los DataFrames

Comentarios recientes

  • bif en JSON en bases de datos: cuándo es buena idea y cuándo no
  • bif en Cómo desinstalar Oracle Database 19c en Windows
  • M. Pilar en Cómo eliminar las noticias en Windows 11 y recuperar tu concentración
  • Daniel Rodríguez en Probabilidad básica: cómo entender el azar en nuestra vida diaria
  • Pepe en Probabilidad básica: cómo entender el azar en nuestra vida diaria

Publicidad


Footer

Analytics Lane

  • Acerca de Analytics Lane
  • Boletín de noticias
  • Contacto
  • Libros
  • Lo más popular
  • Noticias
  • Tienda
  • Tiendas afiliadas

Secciones

  • Ciencia de datos
  • Criptografía
  • Herramientas
  • Machine Learning
  • Opinión
  • Productividad
  • Programación
  • Reseñas

Sobre de Analytics Lane

En Analytics Lane tratamos de explicar los principales conceptos de la ciencia e ingeniería de datos con un enfoque práctico. Los principales temas tratados son ciencia de datos, ingeniería de datos, inteligencia artificial, machine learning, deep learning y criptografía. Además, también se habla de los principales lenguajes de programación y herramientas utilizadas por los científicos e ingenieros de datos.

Copyright © 2018-2026 Analytics Lane ·Términos y condiciones ·Política de Cookies ·Política de Privacidad ·Herramientas de privacidad ·Contacto