Rust 字符和字符串
字符
- Unicode 标量值,其值对应于 Rust 中 u32 类型
- 占4个字节
- 可方便地转换为 utf8 编码字符序列
字符串
- UTF-8 字节序列,
Vec<u8>
- str 和 String 两大常用字符串类型
- 其它字符串类型
- CStr 和 CString
- OsStr 和 OsString
- Path 和 PathBuf
Trait std::str::pattern::Pattern
因为 Rust 没有内置的正则表达式,所以需要使用 Pattern Trait 来实现字符串的模式匹配。
pub trait Pattern<'a>: Sized {
type Searcher: Searcher<'a>;
// Required method
fn into_searcher(self, haystack: &'a str) -> Self::Searcher;
// Provided methods
fn is_contained_in(self, haystack: &'a str) -> bool { ... }
fn is_prefix_of(self, haystack: &'a str) -> bool { ... }
fn is_suffix_of(self, haystack: &'a str) -> bool
where Self::Searcher: ReverseSearcher<'a> { ... }
fn strip_prefix_of(self, haystack: &'a str) -> Option<&'a str> { ... }
fn strip_suffix_of(self, haystack: &'a str) -> Option<&'a str>
where Self::Searcher: ReverseSearcher<'a> { ... }
}