banner
SlhwSR

SlhwSR

热爱技术的一名全栈开发者
github
bilibili

彻底玩6正则(2)

转义#

假设要验证一个带小数点的数值,写法如下:

let str=12.24
  // .代表除换行以外对任意字符,包括,因此要转义
  // /.
    /\d+\.\d+/.test(str)  //true
  // /d+匹配一个或多个数值

用对象创建

//注意这里传的是字符串,而不是字面量。
let reg=new RegExp("\d+\.\d+","g")
reg.test(str) //false  

同样的匹配为什么字面量可以匹配但是对象不可以?

原因

console.log("/d"==="d") //true
console.log("//d"==="/d") //true

综上可得创建对象时:

//注意这里传的是字符串,而不是字面量。
let reg=new RegExp("\\d+\\.\\d+","g")
reg.test(str) //false  

例子#

定义网址:

let url="https://www.iyysxz.top"
log(/https?:\/\/\w+\.\w+\.\w+/.test(url))

例子二#

假设希望用户名为开头字母,且不超过 15 位以数字结尾。

<input name="user" type="text">
<srcipt>
  const ele=document.querySelector("[name='user']")
  ele.addEventLisitenr("keyup",function(){
    this.value.match(/^[a-z]/w{3,14}$/)
  })
</srcipt>
加载中...
此文章数据所有权由区块链加密技术和智能合约保障仅归创作者所有。