微信小程序查询正则使用问题

微信小程序查询正则使用问题

下面这个代码

.where({ biaoti:/小米/i })

这里面的小米怎么换成变量,以便输入框输入内容后进行查询。

var s='小米'; //变量值,改这里
var re=new RegExp(s,'i') 
.where({ biaoti:re }) 
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632不知道你这个问题是否已经解决, 如果还没有解决的话:
  • 帮你找了个相似的问题, 你可以看下: https://ask.csdn.net/questions/7664774
  • 除此之外, 这篇博客: 微信小程序登录和授权 小白摸索的推荐使用方法和最佳实践中的 官方更新的解读参考 部分也许能够解决你的问题, 你可以仔细阅读以下内容或者直接跳转源博客中阅读:
    • 使用组件来获取用户信息,用户拒绝授权后也可以重新弹窗再次授权
    • 若用户满足一定条件(下文有详细介绍),则可以用wx.login 获取到的code直接换到unionId
    • wx.getUserInfo 不依赖 wx.login 就能调用得到数据。
  • 您还可以看一下 田德华老师的小程序·云开发实战 微信朋友圈所有功能课程中的 发布动态 ~ 获取输入的文本内容小节, 巩固相关知识点
  • 以下回答来自chatgpt:
    /**
     * 优化的解决方案:
     * 使用正则表达式的构造函数创建一个动态的正则表达式,将原始字符串中匹配的字符串替换为输入框中的内容。
     * 这样的做法可以使得正则表达式可以动态地匹配不同的字符串。
     */
    
    // 输入框中的内容
    var inputContent = '小米';
    
    // 原始字符串
    var originalString = '这里是小米的产品信息';
    
    // 构造动态的正则表达式
    var pattern = new RegExp('小米', 'g');
    
    // 正则表达式匹配替换
    var replacedString = originalString.replace(pattern, inputContent);
    
    console.log(replacedString); // 输出: 这里是输入框内容的产品信息
    

    修改代码的原因: 在原始代码中,使用了正则表达式字面量形式来进行匹配和替换。这种方式在每次替换的时候都会创建一个新的正则表达式对象,导致性能上的开销。优化的解决方案是使用正则表达式的构造函数来创建一个动态的正则表达式对象,这样可以复用这个对象,提高代码的性能。


如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^