1、排除匹配的用法:
[^ABC] |
匹配除了 [...] 中字符的所有字符,例如 [^aeiou] 匹配字符串 "google runoob taobao" 中除了 e o u a 字母的所有字母。 |
使用举例:
mongo表中的数据有以下3条数据:
{ "_id" : ObjectId("6178cb5d93e5a849c768df84"), "index" : 1.0, "name" : "211026回一剪联系方式H1shol3" } /* 2 */ { "_id" : ObjectId("6178cb7a93e5a849c768df85"), "index" : 2.0, "name" : "211015回一不可能静shol3" } /* 3 */ { "_id" : ObjectId("61791bd98888b30626060bc2"), "index" : 3.0, "name" : "211026回一测试12abH1shol3" }
想筛选出素材名称结尾是 shol3的第2条数据,查询语句为:
db.getCollection('regex_test').find({"name" : {'$regex': '[^a-zA-Z0-9]+shol3'}})