Menu
Coddy logo textTech

Métodos de String

Parte da seção Fundamentos do Journey de Rust da Coddy. Lição 69 de 75.

Rust possui um conjunto abrangente de métodos de string integrados que permitem realizar várias operações em strings. Esses métodos oferecem funcionalidades para manipular, pesquisar e transformar strings. Aqui estão alguns métodos de string usados com frequência:

  • len(): Retorna o número de bytes na string (igual à contagem de caracteres para texto ASCII).
  • chars().nth(index): Retorna o caractere no índice especificado (baseado em 0). Este método retorna um Option<char>: um tipo especial do Rust que representa um valor Some (se o índice existir) ou None (se não existir). Chamar .unwrap() nele extrai diretamente o valor do caractere.
  • contains(substring): Verifica se a string contém a substring especificada.
  • starts_with(prefix): Verifica se a string começa com o prefixo especificado.
  • ends_with(suffix): Verifica se a string termina com o sufixo especificado.
  • to_uppercase(): Converte a string para maiúsculas.
  • to_lowercase(): Converte a string para minúsculas.
  • trim(): Remove os espaços em branco no início e no final da string.

Por exemplo:

let message = "Hello, World!";
let length = message.len();
let firstChar = message.chars().nth(0).unwrap();
let contains_world = message.contains("World");
let starts_with_hello = message.starts_with("Hello");
let lower = message.to_lowercase();
challenge icon

Desafio

Fácil

Crie um método chamado analyzeString que recebe uma string como entrada e imprime a seguinte análise usando métodos de string:

  1. O comprimento da string
  2. O caractere no índice 4
  3. Se a string contém a substring "Rust"
  4. Se a string termina com um ponto .
  5. A string convertida para maiúsculas

A saída deve seguir este formato exato:

Length: [The length]
Char at 4: [The Char at index 4]
Contains Rust: [true or false]
Ends with dot: [true or false]
Uppercase: [The string in uppercase]

Observação: suponha que a string de entrada será longa o suficiente para todas as operações.

Experimente você mesmo

use std::io;

fn analyze_string(s: &str) {
    // Escreva seu código aqui
}

fn main() {
    let mut message = String::new();
    io::stdin().read_line(&mut message).unwrap();
    let message = message.trim();
    analyze_string(message);
}
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 Fundamentos

Pratique por conta própria: Compilador de Rust online