Menu
CoddyTech

Substituir e Remover Espaços

Parte da seção Lógica e fluxo do Journey de GDScript da Coddy. Lição 3 de 78.

replace(what, with) retorna uma nova string na qual cada ocorrência de what é substituída por with. Substituir por uma string vazia remove o texto:

var phone := "555-123-4567"
print(phone.replace("-", ""))
print(phone.replace("-", " "))
print(phone)
5551234567
555 123 4567
555-123-4567

A string original não muda. replace() diferencia maiúsculas de minúsculas; replacen() faz a mesma coisa e não diferencia maiúsculas de minúsculas:

var chat := "Hello hello HELLO"
print(chat.replace("hello", "hi"))
print(chat.replacen("hello", "hi"))
Hello hi HELLO
hi hi hi

O texto digitado por um usuário geralmente tem espaços extras ao redor. strip_edges() remove espaços, tabulações e quebras de linha das duas extremidades e mantém os que estão no meio:

var typed := "   Ana Lee  "
print("[" + typed.strip_edges() + "]")
[Ana Lee]

strip_edges(true, false) remove apenas o início à esquerda e strip_edges(false, true) apenas o início à direita. Para remover um texto específico de uma extremidade, use trim_prefix() ou trim_suffix(). Eles não alteram nada quando o texto não está lá:

print("level_03.tscn".trim_suffix(".tscn"))
print("level_03.tscn".trim_suffix(".png"))
level_03
level_03.tscn

Cada um desses métodos retorna uma string, então você pode encadeá-los: raw.strip_edges().to_lower().replace(" ", "_").

challenge icon

Desafio

Fácil

O programa lê um título de nível em title. Transforme-o em um slug, uma versão do título que pode ser usada como nome de arquivo, e imprima-o. Nesta ordem:

  1. Remova os espaços em ambas as extremidades
  2. Converta-o para letras minúsculas
  3. Substitua cada espaço restante por -
  4. Remova cada !, ? e .

Para a entrada Is Godot Fun? (com espaços ao redor), a saída é:

is-godot-fun

Experimente você mesmo

extends Node

func _ready():
	var title := OS.read_string_from_stdin()
	# Crie o slug e imprima-o
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Lógica e fluxo

Pratique por conta própria: Compilador de GDScript online