zoukankan      html  css  js  c++  java
  • 小程序云开发中的正则表达式

    什么是正则表达式?

    正则表达式描述了一种字符串匹配的模式,可以用来检查一个串是否含有某种字串、将匹配的子串替换或者从某个串中取出符合某个条件的字串等。

     

    云开发中的正则表达式对象

    在云开发中正则表达式的对象有两种写法如下:

    原生正则对象

    /miniprogram/i

    云开发中构建的db.RegExp对象

    db.RegExp({
        regexp: 'miniprogram',
        options: 'i',
    })

    这两种表达式在功能上并没有什么不同,不同的地方在对于一些比较特殊的正则对象来说使用某一种形式可能更方便

    在云开发中使用正则查询

    在云开发中使用正则查询的方法如下,我们只需在where查询的description字段中包含我们的正则查询对象

    db.collection('todos').where({
        description: db.RegExp({
            regexp: 'miniprograme',
            options: 'i',
        })
    })

     演示:

    第一步:现在数据库中添加数据

    添加四条记录分别为:name:name-01;  name:name-02;  name:03-name;  name:name-4(注意看嗷~)

     第二步:在小程序中新建一个页面并设置为首页(方法:在app.json中pages的数组最前面加上例如"pages/select/select",保存后就添加好了),在select.wxml里添加一个按钮并绑定一个点击事件query

    代码如下:

    <button bindtap="query">正则查询</button>

    第三步:编写点击事件

    将select.js里的内容改成如下代码:

    const db = wx.cloud.database();
    const _ = db.command
    Page({
      query:function(){
        console.log("Query")
        db.collection("data")
        .where({
          name: new db.RegExp({
            regexp:'name-0[1-9]',      //方括号内代表匹配1-9
            options:'i'                //i表示忽略大小写
          })
        })
        .get().then(console.log)
      }
    })

    第四步:保存编译后点击查询

    查询结果:

     可以看到只给出了name-0[1-9]格式的数据

    欢迎关注公众号白帽技术与网络安全免费领取海量学习视频

  • 相关阅读:
    redhat 5.0 python2.4升级到2.7
    bindiff 4.2使用
    patchdiff2 函数比较插件
    OpenGL 获取当前屏幕坐标对应的三维坐标
    CsGL着色的三角形
    glEnable(GL_DEPTH_TEST)作用
    OpenGL之抗锯齿 以及 线宽的设置
    glLoadIdentity
    2.AngularJS-验证
    1.MVC概要与angular概要、模板与数据绑定
  • 原文地址:https://www.cnblogs.com/0pen1/p/12728328.html
Copyright © 2011-2022 走看看