正则中使用变量

一般的正则是把规则固定写好,如下

const reg = /^(\d+)\.(\d{2})(\d+)*$/
这是一个匹配2位小数位数的正则,
实际使用中,类似小数位数,密码长度等,可能根据不同场景有变化,所以写成一个变量,使用的时候传入比较方便
正则中使用变量,不能直接用字符串拼接
 可以使用正则的构造函数创建
上面的正则,把2变成变量
const handleNumber = (value, dot=2) => { // value:输入值, dot:需要的小数位数
....
const reg = new RegExp("(\\d+)\\.(\\d{" + dot + "})(\\d+)*$")
...
}
这里要注意,在字符中这种\会当成转义符,需要在前面多加一个\
 
posted @ 2023-01-16 16:39  潇湘羽西  阅读(1399)  评论(0编辑  收藏  举报