banner
SlhwSR

SlhwSR

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

完全掌握正則表達式(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>
載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。