我试图找出子字符串是否在字符串中.在Python中,这涉及到in运算符,因此我编写了以下代码:

let a = "abcd";
if "bc" in a {
    do_something();
}

我收到一条奇怪的错误信息:

error: expected `{`, found `in`
 --> src/main.rs:3:13
  |
3 |       if "bc" in a {
  |  _____________-^
4 | |         do_something();
5 | |     }
  | |_____- help: try placing this code inside a block: `{ a <- { do_something(); }; }`

这条信息建议我把它放在一个街区里,但我不知道该怎么做.

推荐答案

Rust没有这样的操作员.你可以用String::contains method来代替:

if a.contains("bc") {
    do_something();
}

Rust相关问答推荐

即使参数和结果具有相同类型,fn的TypId也会不同

为什么类型需要在这个代码中手动指定,在rust?

在泛型 struct 的字段声明中访问关联的Conant

如何go 除铁 rust 中路径组件的第一项和最后一项?

从Type::new()调用函数

创建Rust中元对象协议的动态对象 Select /重新分配机制

异步函数返回的future 生存期

在Rust中,Box:ed struct 与普通 struct 在删除顺序上有区别吗?

try 创建随机数以常量

了解Rust';s特征对象和不同函数签名中的生存期注释

为什么比较Option<;字符串>;具有常数Option<&;str>;需要显式类型转换吗?

处理带有panic 的 Err 时,匹配臂具有不兼容的类型

在不安全的 Rust 中存储对 struct 内部数据的静态引用是否合法?

如何在 Rust 中按 char 对字符串向量进行排序?

如何刷新 TcpStream

在单独的线程上运行 actix web 服务器

匹配结果时的简洁日志(log)记录

如何为枚举中的单个或多个值返回迭代器

Rust:如果我知道只有一个实例,那么将可变borrow 转换为指针并返回(以安抚borrow 判断器)是否安全?

为什么我不能将元素写入 Rust 数组中移动的位置,但我可以在元组中完成