0

I need to replace $ by Random how can I do this. I want to convert this text from Some texte here some text here to be like this Som(gb5t2)e t(gb95f)ext(ze6f5)e h(bs3e2)ere (avFe3)so(gEC3e)me (aFE98)tex(8FZq2)t h(dq9aA)ere(cZ3cC).

function String() {
    var str =  "Some texte here some text here".replace(/(.{3})/g, "$1$");
    var mystring = str;
    var find = "$";
    var regex = new RegExp(find, "g");
    var fun = randomString();
    alert(mystring.replace(regex, fun));
    document.write(str);

    function randomString() {
        var chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz";
        var string_length = 5;
        var randomstring = '';
        for (var i=0; i<string_length; i++) {
            var rnum = Math.floor(Math.random() * chars.length);
            randomstring += chars.substring(rnum,rnum+1);
        }
        document.randform.randomfield.value = " ( " + randomstring + " ) ";
    }
}
Md Johirul Islam
  • 5,042
  • 4
  • 23
  • 56
Msf007
  • 3
  • 4

2 Answers2

0

First things first, your function randomString() doesn't return anything, so fun is always going to be nothing. Secondly, your find regex doesn't work.

Try something with these two:

var find = '\\$+';

function randomString() {
   var chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz";
   var string_length = 5;
   var randomstring = '';

   for (var i=0; i<string_length; i++) {
       var rnum = Math.floor(Math.random() * chars.length);
       randomstring += chars.substring(rnum,rnum+1);
   }

   return randomstring;
}
Airistotal
  • 95
  • 8
0

I have done some modifications to your code it should work now.

function String() {
var str =  "Some texte here some text here".replace(/(.{3})/g, function (x) 
{
return x + randomString();
});

document.write(str);

function randomString() {
var chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz";
var string_length = 5;
var randomstring = '';
for (var i=0; i<string_length; i++) {
    var rnum = Math.floor(Math.random() * chars.length);
    randomstring += chars.substring(rnum,rnum+1);
}
return " ( " + randomstring + " ) ";
}
}
Harun Diluka Heshan
  • 1,155
  • 2
  • 18
  • 30