How to use a variable inside a RegEx pattern?
本问题已经有最佳答案,请猛点这里访问。
此代码的用法是只显示输入的最后四位数字。
这里我想替换这个"(/"(?=.4)/g,'*')"'4'带变量'mask'。像那样。
1 | x.value = x.value.replace(/.(?=.{+mask+})/g, '*'); |
有什么建议吗?
1 2 3 4 | function myFunction(mask) { var x = document.getElementById("cc"); x.value = x.value.replace(/.(?=.{4})/g, '*'); } |
1 | <input type="text" id="cc" onkeyup="myFunction(4)" style="text-align:right"> |
使用
在构建字符串之后,确保有一个有效的模式。
1 2 3 | var len = 99; var re = new RegExp(".(?=.{" + len +"})","g"); var output = input.replace(re,"*") |
另见(和投票支持被骗者):
- 如何在正则表达式中使用变量?