Menu
CoddyTech

字符串方法

本课属于 Coddy Rust 学习旅程的“基础知识”单元。第 69 课,共 75 课。

Rust 内置了丰富的字符串方法,可用于对字符串执行各种操作。这些方法可以帮助你处理、搜索和转换字符串。以下是一些常用的字符串方法:

  • len():返回字符串中的字节数(对于 ASCII 文本,这等于字符数)。
  • chars().nth(index):返回指定索引处的字符(从 0 开始)。这个方法返回一个 Option<char>:这是一种特殊的 Rust 类型,表示值可能是 Some(如果该索引存在),也可能是 None(如果不存在)。对它调用 .unwrap() 会直接提取字符值。
  • contains(substring):检查字符串是否包含指定的子字符串。
  • starts_with(prefix):检查字符串是否以指定的前缀开头。
  • ends_with(suffix):检查字符串是否以指定的后缀结尾。
  • to_uppercase():将字符串转换为大写。
  • to_lowercase():将字符串转换为小写。
  • trim():移除字符串开头和结尾的空白字符。

例如:

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

挑战

简单

创建一个名为 analyzeString 的方法,将字符串作为输入,并使用字符串方法打印以下分析结果:

  1. 字符串的长度
  2. 索引 4 处的字符
  3. 字符串是否包含子字符串 "Rust"
  4. 字符串是否以句点 . 结尾
  5. 转换为大写的字符串

输出应遵循以下确切格式:

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]

注意:假设输入字符串足够长,可以执行所有操作。

亲手试试

use std::io;

fn analyze_string(s: &str) {
    // 在这里编写你的代码
}

fn main() {
    let mut message = String::new();
    io::stdin().read_line(&mut message).unwrap();
    let message = message.trim();
    analyze_string(message);
}
quiz icon自我测试

这节课包含一个小测验。开始学习即可作答,并记录你的进度。

基础知识中的所有课

自己练习: Rust 在线编译器