有如下需求
过滤连续6位以上的数字,并且不在某个白名单中,都需要把数字过滤成红色的****
如:
1348769887
8769887
134988727764
白名单中值为: 8769887
如何用正则,弄成:
134*******
*******
134988727764
谢谢。
------解决方案--------------------
包含白名单的数字不替换还是替换?。。
<%
s="1348769887<br/>8769887<br/>134988727764"
s=RP(s)
response.Write s
%>
<script runat="server" language="jscript">
function RP(v) {
var whiterx = /(8769887
------解决方案--------------------
8769886)/;//修改你的这个正则如果还有其他白名单
return v.replace(/(\d{3})(\d{3,})/g, function ($0, $1, $2) {
if (whiterx.test($0)) return $0;//包含白名单中不替换
return $1 + '<font color="red">' + $2.replace(/\d/g, '*') + '</font>';
});
}
</script>