2016-12-07 9 views
0

私はthisの投稿を見つけましたが近いですが、私はこの質問を少し拡大したいと思います。特定のグループのすべての文字をアスタリスクに置き換えてください

各文字(正規表現のグループ内)をアスタリスクに置き換える必要があります。例えば

Hello, my password is: SecurePassWord =>Hello, my password is: **************

私はグループにそれをつかむために正規表現がありますが、私は(リンクから)この例を適用する方法を見つけ出すことはできません。str.replace(/./g, '*');

をこのような何かに:str.replace(/(Hello, my password is\:)(\w+)/g, '$1...');...は$ 2の文字をアスタリスクに変換する魔法になります。

答えて

0

replacement functionには、String.prototype.replaceと一致するテキストとグループを使用できます。

var input = 'Hello, my password is: SecurePassWord'; 
 
var regex = /(Hello, my password is:)(\w+)/; 
 
var output = input.replace(regex, function(match, $1, $2) { 
 
    // $1: Hello, my password is: 
 
    // $2: SecurePassWord 
 
    // Replace every character in the password with asterisks 
 
    return $1 + $2.replace(/./g, '*'); 
 
}); 
 
console.log(output);

0

あなたは特に正規表現を必要としないかもしれない場合。

あなたが行うことができます
var password = "something"; 

:付き

var mystring = "My passsword is " + Array(password.length).join("*"); 

または:

var mystring = "My passsword is " + password; 
mystring = mystring.replace(password, Array(password.length).join("*")); 
関連する問題