Caracteres e strings

Os caracteres em Julia são escritos usando aspas simples.

letra = 'A'
digit = '5'
println("Letra: ", letra, "  | Tipo: ", typeof(letra))
println("Dígito: ", digit, " | Tipo: ", typeof(digit))
Letra: A  | Tipo: Char
Dígito: 5 | Tipo: Char

Já as strings, que são cadeias de caracteres, usam aspas duplas.

str = "Julia é incrível"
println("String: ", str, " | Tipo: ", typeof(str))
String: Julia é incrível | Tipo: String

Interpolação de strings

Ao invés de imprimir uma mensagem usando separação por vírgulas, podemos interpolar valores dentro da string. Inclusive, operações podem ser avaliadas na interpolação.

x, y = 10, 20
println("O valor de x é $x e y é $y")
println("Soma: $(x + y)")
O valor de x é 10 e y é 20
Soma: 30

Isso evita a necessidade de chamadas verbosas. Podemos interpolar qualquer expressão em uma string usando os parênteses.

Concatenação de strings

A concatenação de strings que funciona como colar palavras ou frases pode ser realizada com o operador *.

str1 = "Julia "
str2 = "é "
str3 = "legal"
str4 = str1 * str2 * str3 * "!"
println(str4)
Julia é legal!

Podemos extrair caracteres da string por meio de indices:

println("primeiro = ", str4[begin])
println("terceiro = ", str4[3])
println("último = ", str4[end])
primeiro = J
terceiro = l
último = !

Tambem podemos extrair substrings usando um range:

println("substantivo = ", str4[begin:6])
println("predicado = ", str4[7:end])
substantivo = Julia 
predicado = é legal!

Operações comuns

Comparação de strings usando a ordem lexicográfica (do dicionário).

println("Julia < Pyhon: ", "Julia" < "Pyhon")
println("Julia == julia: ", "Julia" == "julia")
println("Julia != Rust: ", "Julia" != "Rust")
Julia < Pyhon: true
Julia == julia: false
Julia != Rust: true

Buscar por indice em particular:

println("O primeiro 'a': ", findfirst('a', "Juliana"))
println("O ultimo 'a': ", findlast('a', "Juliana"))
O primeiro 'a': 5
O ultimo 'a': 7

Descobrir se um substring ocorre em uma string:

println("occursin(\"é legal\", str4): ", occursin("é legal", str4))
occursin("é legal", str4): true

Outrs funções úteis:

str5 = repeat(".gol.", 10)
println(str5)
str6 = ".gol."^10
println(str6)
str7 = join(["Julia", "Python", "MATLAB"], ", ", " e ")
println(str7)
.gol..gol..gol..gol..gol..gol..gol..gol..gol..gol.
.gol..gol..gol..gol..gol..gol..gol..gol..gol..gol.
Julia, Python e MATLAB

A função join é a ferramenta padrão para transformar uma coleção em uma única string, conectando os elementos por um delimitador opcional.

println("Sem separador: ", join([1, '1', "3"]))
println("Com separador: ", join([1, 2, 3], "-"))
println("Com delimitador: ", join(["pão", "leite", "ovos"], ", ", " e "))
Sem separador: 113
Com separador: 1-2-3
Com delimitador: pão, leite e ovos
De volta ao topo