轉義#
假設要驗證一個帶小數點的數值,寫法如下:
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>