MongoDB 中查询条件也可以使用正则表达式作为匹配约束。
语法格式:
db.COLLECTION_NAME.find({字段名:正则表达式});
db.COLLECTION_NAME.find({字段名:{$regex:正则表达式,$options:正则选项}});
正则选项:
i - 不区分大小写以匹配大小写的情况。
m - 多行查找,如果内容里面不存在换行符号(例如 \n)或者条件上没有(start/end),该选项没有任何效果
x - 设置 x 选项后,正则表达式中的非转义的空白字符将被忽略。需要$regex 与$options 语法
s - 允许点字符(即.)匹配包括换行符在内的所有字符。需要$regex 与$options 语法
i,m,x,s 可以组合使用。
数据如下:
^开头和$结尾(同时使用中间加.*)
查询以s开头a结尾的数据(两种写法)
$not:
查询不是以s开头a结尾的数据
$in:
查询以s开头a结尾或者以j开头s结尾的数据
¥nin: 相当于not和in的结合
查询不以s开头a结尾或者以j开头s结尾的数据