2012-07-30 23 views
5

Bir dize ile bir tamsayıyı değiştirmek için JS .replace kullanarak kafamı bazı düzenli ifadeler etrafında tutmaya çalışıyorum.JS regex sayıyı değiştir

Örneğin, dize olabilir:

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

başka değerle '0' değiştirmek istiyor.

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

Ama biz çift haneleri veya daha fazla (12, 3204 200, ne demek istediğimi olsun), düzgün çalışmamaya başlıyor değiştirirken başladığınızda: Aslında bu kullanıyordum. Bunu nasıl istediğim gibi çalıştırabileceğinden emin değilim.

Şimdiden teşekkürler. Oldukça memnun olarak. Aşağıdaki

cevap

3

Kullanım:

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

parantez içinde bütün rakamları aynı olmalıdır. ,

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

JS Fiddle demo

(demo düğümlerini yinelemek için jQuery kullanır Not ama bu sadece bir kolaylık olduğunu ve düzenli ifade ile bir ilgisi yoktur:

İlgili konular