记录下开发过程中遇到正则问题的解决方案

938 阅读1分钟

开发过程中,踩了很多正则的坑,记录下来,

要求动态获取最新的校验规则,密码要求是根据返回的参数动态拼接的,具体看代码

image.png 动态校验密码规则代码

image.png 其中这几个特殊字符需要反斜杠转义- [ ] \

动态表单中需要动态生成正则,解决方案看代码

image.png 这里遇到个问题,数字用[0-9]表示是起作用的,但是用\d就不行,其实是因为\需要反斜杠转义

最后记录几个正则表达式吧:

1数字验证: /^-?[0-9]+.?[0-9]*$/

2联系方式 : /^((0\d{2,3}-\d{7,8})|(1[3456789]\d{9})|(\d{3,4}-\d{3,4}-\d{4}))$/

3最多几位小数: new RegExp(^-?[0-9]+([\.][0-9]{1,${Number(item.digit)}})?$)