Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MongoDB

Tìm kiếm chuỗi chứa "@email" trong trường MongoDB với Regex

Sử dụng Regex case-insensitive (/pattern/i)

MongoDB hỗ trợ Regular Expression trong find(). Cờ i cho phép khớp không phân biệt chữ hoa/thường.

Dữ liệu mẫu

> db.demo727.insertMany([
  { UserId: "John@email.com" },
  { UserId: "John@yahoo.com" },
  { UserId: "Chris@EMAIL.com" }
]);

Truy vấn: tìm chứa "@email" (không phân biệt hoa thường)

> db.demo727.find({ "UserId": { $regex: /@email/i } });

Kết quả

{ "_id": ObjectId("..."), "UserId": "John@email.com" }
{ "_id": ObjectId("..."), "UserId": "Chris@EMAIL.com" }

Cả "email" và "EMAIL" đều khớp nhờ cờ i.