Try
hideValue = function(ev){
var $this = $(this);
$this.data('value', $this.val());
$this.val(function(idx, val){
var mask = val.match(/^(.*?)(\d{4})$/);
return (mask[1] ? mask[1].replace(/\d/g, '*') : '') + (mask[2] ? mask[2] : '')
});
};
Demo: Fiddle