すべての数字を置き換える必要があります。
私の関数は最初の数字のみを置き換えます。
var s = "04.07.2012";
alert(s.replace(new RegExp("[0-9]"), "X")); // returns "X4.07.2012"
// should be XX.XX.XXXX"
すべての数字を置き換える必要があります。
私の関数は最初の数字のみを置き換えます。
var s = "04.07.2012";
alert(s.replace(new RegExp("[0-9]"), "X")); // returns "X4.07.2012"
// should be XX.XX.XXXX"
正規表現に「グローバル」フラグを追加する必要があります。
s.replace(new RegExp("[0-9]", "g"), "X")
または、組み込みのリテラル regexp 構文を使用して、おそらくよりきれいにします。
.replace(/[0-9]/g, "X")
使用する
s.replace(/\d/g, "X")
すべてのオカレンスを置き換えます。はグローバル マッチg
を意味するため、最初の一致後にマッチングが停止することはありません。
RegExp
または、コンストラクターにとどまるには:
s.replace(new RegExp("\\d", "g"), "X")
数字を見つけて、指定された文字列に置き換えます。それは2つの方法で達成されます
正規表現リテラルの使用
キーワード RegExp オブジェクトの使用
正規表現リテラルの使用:
<script type="text/javascript">
var string = "my contact number is 9545554545. my age is 27.";
alert(string.replace(/\d+/g, "XXX"));
</script>
**出力:** 私の連絡先番号は XXX です。私の年齢はXXXです。
詳細については:
http://www.infinetsoft.com/Post/How-to-replace-number-with-string-in-JavaScript/1156
修飾子は、グローバル マッチを実行するために使用されます( /g
最初のマッチ後に停止するのではなく、すべてのマッチを検索します)。
\d
よりも短いので、桁に 使用できます[0-9]
。
JavaScript:
var s = "04.07.2012";
echo(s.replace(/\d/g, "X"));
出力:
XX.XX.XXXX