JSFiddle - React, Tailwind, and code Playground

by stevenkaspar

HTML

<div id='text'>
 here is a string of cc 4000123412341234 and cvv 123 1234. 9016527656
</div>

JavaScript

var d = document;

function mask(value){
    var regex = /([0-9]{1}(\-|\.|\ )?){12,15}([0-9]{1}){1}?(?![0-9])|(\b[0-9]{3,4}\b)/g;
    
    var is_match = false;
    var new_val = value.replace(regex, function(val){
    	console.log(val);
        is_match = true;
        return Array(val.length+1).join('*');
    });
    console.log(is_match, new_val, value);
    return new_val;
}


var div = d.getElementById('text');
div.innerHTML = mask(div.innerHTML);