我想知道如何go 除Rust中字符串的第一个和最后一个字符.

例子:

输入:

"Hello World"

输出:

"ello Worl"

推荐答案

可以使用.chars()迭代器忽略第一个和最后一个字符:

fn rem_first_and_last(value: &str) -> &str {
    let mut chars = value.chars();
    chars.next();
    chars.next_back();
    chars.as_str()
}

对于零或一个大小的字符串,它返回一个空字符串,并将正确处理多字节unicode字符.看看它在playground码上的表现.

Rust相关问答推荐

抽象RUST中的可变/不可变引用

何时可以在Rust中退出异步操作?

为什么`Vec i64`的和不知道是`Option i64`?

在Rust中有没有办法在没有UB的情况下在指针和U64之间进行转换?

无法从流中读取Redis请求

如何在Rust中基于字符串 Select struct ?

习语选项<;T>;到选项<;U>;当T->;U用From定义

通过异常从同步代码中产生yield 是如何工作的?

Rust 中的静态引用

在没有任何同步的情况下以非原子方式更新由宽松原子操作 Select 的值是否安全?

为什么 Rust 字符串没有短字符串优化 (SSO)?

如何为已实现其他相关 std trait 的每个类型实现一个 std Trait

rust tokio::spawn 在 mutexguard 之后等待

使用 `clap` 在 Rust CLI 工具中设置布尔标志

预期类型参数,发现不透明类型

通用函数中的生命周期扣除和borrow (通用测试需要)

有没有办法隐藏类型定义?

编写 TOML 文件以反序列化为 struct 中的枚举

为什么我不能为 Display+Debug 的泛型类型实现 std::error::Error 但有一个不是泛型参数的类型?

当值是新类型包装器时,对键的奇怪 HashMap 生命周期要求