如何使用多个参数拆分Rust中的字符串?

如何使用多个参数拆分Rust中的字符串?,rust,Rust,我正在尝试使用空格和,拆分生锈的字符串。我试过了 let v: Vec<&str> = "Mary had a little lamb".split_whitespace().collect(); let c: Vec<&str> = v.split(',').collect(); 让v:Vec=“玛丽有一只小羊羔”。拆分空白(); 设c:Vec=v.split(',').collect(); 结果是: 错误[E0277]:绑定为的特征不满足 -->

我正在尝试使用空格和
拆分生锈的字符串。我试过了

let v: Vec<&str> = "Mary had a little lamb".split_whitespace().collect(); 
let c: Vec<&str> = v.split(',').collect();
让v:Vec=“玛丽有一只小羊羔”。拆分空白();
设c:Vec=v.split(',').collect();
结果是:

错误[E0277]:绑定为的特征不满足
-->src/main.rs:3:26
|
3 |设c:Vec=v.split(',').collect();
|^^^^ `字符未实现特性'for'`
错误[E0599]:找不到类型为'std::slice::Split:std::iter::Iterator'的名为'collect'的方法`
`&mut std::slice::Split使用闭包:

let v: Vec<&str> = "Mary had a little lamb."
    .split(|c| c == ',' || c == ' ')
    .collect();
让v:Vec=“玛丽生了一只小羊羔。”
.split(|c | c==',“|c==”)
.收集();

这是基于。

将带有
字符的切片传递给它:

fn main() {
    let s = "1,2 3";
    let v: Vec<_> = s.split([' ', ','].as_ref()).collect();

    assert_eq!(v, ["1", "2", "3"]);
}
fn main(){
设s=“1,2 3”;
设v:Vec=s.split(['','].as_ref()).collect();
断言(v、[“1”、“2”、“3”);
}
split
接受类型为
Pattern
的参数。要查看可以作为参数传递的具体内容,请参见