gpt4 book ai didi

javascript - 正则表达式查找除输入的最后 n 个字符之外的匹配项

转载 作者:行者123 更新时间:2023-11-28 15:11:16 25 4
gpt4 key购买 nike

我必须将信用卡前 (n-4) 个字符中的数字替换为“*”。我正在使用以下三行代码。

var cardnumber = '1A2C3GF4DS84Ff'; 
last4digits = cardNumber.substring(cardNumber.length-4);
prevdigits = cardNumber.substring(0, cardNumber.length-4).replace(/[0-9]/g,'*');
$cache.cardNumber.val( prevdigits + last4digits);

只是想知道我可以使用正则表达式仅用一行代码来完成此操作。

最佳答案

使用前瞻确保数字后至少有四个剩余字符。换句话说,最后四个字符内的数字将不匹配:

var regexp = /\d(?=....)/g;

> cardnumber.match(regexp)
< ["1", "2", "3", "4"]

用星号替换:

> cardnumber.replace(regexp, '*')
< "*A*C*GF*DS84Ff"

有关前瞻的信息是 here .

关于javascript - 正则表达式查找除输入的最后 n 个字符之外的匹配项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36364125/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com