小程序
小游戏
企业微信
微信支付
扫描小程序码分享
官方说一般情况下用这个原生的正则去匹配,可是具体要怎么用呢?比如我数据库user表有两条数据,一条{name:''刘德华''},一条是{name:"张学友}我现在想通过一个“刘”字来找到其中一条数据,要怎么写呢?求大神告知!
2 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
感谢大佬指引,现问题已解决,把成果贴出来。问题的起源是我想封装一个通用的模糊查询云函数,通过官方文档发现可以new一个正则,但是文档上面写的很清楚,除非迫不得已,不然还是用原生的,并且new的正则传东西好像也不好传。所以打算用这种方式 where({name:/刘/}),但是这个对象{name:/刘/}在传递过程中,到了云函数端就变成了{name:{}}这样的空的对象。既然正则不好传递,那么就云端生成,所以最后的根本问题是正则的拼接,通过查询,得知这样一个函数 eval(),问题就迎刃而解了!如图!
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
// 数据库正则对象 db.collection('todos').where({ name: db.RegExp({ regexp: '刘' }) }) // 原生Javascript对象 db.collection('todos').where({ name: /刘/ })
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
感谢大佬指引,现问题已解决,把成果贴出来。问题的起源是我想封装一个通用的模糊查询云函数,通过官方文档发现可以new一个正则,但是文档上面写的很清楚,除非迫不得已,不然还是用原生的,并且new的正则传东西好像也不好传。所以打算用这种方式 where({name:/刘/}),但是这个对象{name:/刘/}在传递过程中,到了云函数端就变成了{name:{}}这样的空的对象。既然正则不好传递,那么就云端生成,所以最后的根本问题是正则的拼接,通过查询,得知这样一个函数 eval(),问题就迎刃而解了!如图!
// 数据库正则对象 db.collection('todos').where({ name: db.RegExp({ regexp: '刘' }) }) // 原生Javascript对象 db.collection('todos').where({ name: /刘/ })
如下两图,一个是本地代码,一个是云函数端,searchObj传上去在云函数端打印出来是一个这样的 searchObj:{nickName:{}},里面是空的,查询到的结果是所有,这个有什么办法不?