看相对靠谱的一个实例:判断元素A是否以元素B开头,且比元素A比B多两个字符。
例如:当B为"ABC"时,A为"ABCDE"时会符合条件。
像这样的特定情况,需要在使用的正则表达式中加入某一变量进行判断。
使用像rule = /^+B+[0-9]{2}$/这样的肯定是会报错的,变量B会被理解为正则表达式的字符,理解不了就会报错。
因此我们想到了通过构造函数RegExp()来生成正则表达式。
var B = "abc"
var A = "abcde"
var rule= new RegExp("^"+B+"\\S{2}$") //S为大写的
console.log(rule.test(A))
最后的输出结果未true,也就是验证成功了!
希望本文会对您有所帮助^_^。