当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Rust str.chars用法及代码示例


本文简要介绍rust语言中 str.chars 的用法。

用法

pub fn chars(&self) -> Chars<'_>

在字符串切片的 char 上返回一个迭代器。

由于字符串切片由有效的 UTF-8 组成,我们可以通过 char 遍历字符串切片。此方法返回这样的迭代器。

请务必记住, char 代表 Unicode 标量值,可能与您对 'character' 的理解不符。对字素簇的迭代可能是您真正想要的。 Rust 的标准库不提供此函数,请检查crates.io。

例子

基本用法:

let word = "goodbye";

let count = word.chars().count();
assert_eq!(7, count);

let mut chars = word.chars();

assert_eq!(Some('g'), chars.next());
assert_eq!(Some('o'), chars.next());
assert_eq!(Some('o'), chars.next());
assert_eq!(Some('d'), chars.next());
assert_eq!(Some('b'), chars.next());
assert_eq!(Some('y'), chars.next());
assert_eq!(Some('e'), chars.next());

assert_eq!(None, chars.next());

请记住, char 可能与您对字符的直觉不符:

let y = "y̆";

let mut chars = y.chars();

assert_eq!(Some('y'), chars.next()); // not 'y̆'
assert_eq!(Some('\u{0306}'), chars.next());

assert_eq!(None, chars.next());

相关用法


注:本文由纯净天空筛选整理自rust-lang.org大神的英文原创作品 str.chars。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。