2012-07-30 12 views
5

JS .replaceを使用して正規表現の周りに頭を浮かべて、整数を文字列に置き換えようとしています。JS regex replace number

たとえば、文字列は次のようになります。

var string = 'image[testing][hello][0][welcome]'; 

は、私は別の値を「0」交換したいです。それが正常に動作を停止し、

string.replace(/\[\d\]/g, '[newvalue]'); 

しかし、我々は二桁以上の交換を開始するとき(12、200、3204、あなたは私が何を意味するかを取得):私はもともとこれを使用していました。それが私がそれを望む方法を機能させる方法を確信していない。

ありがとうございます。大変感謝しています。次

答えて

10

string.replace(/\[\d+\]/g, '[newvalue]'); 

JS Fiddle demo

は(デモは、ノードを反復処理するのjQueryを使用していますが、それは単に利便性だし、正規表現とは関係ありません注意してください、 )

\dは1桁にしか一致しないのに対して、+の演算子/文字の指定前の(この場合は数字)文字を1回以上繰り返します。

参考:

3

用途:

string.replace(/\[\d+\]/g, '[newvalue]');

括弧内のすべての数字と一致する必要があります。あなたが複数の数字を指定する必要があります