2014-09-03 120 views
-3

我需要形成用於以下正則表達式:正則表達式生成

while(rste1.next()) 
{ 
e1 = rste1.getInt(1); 
e1t[i] = e1t[i]++e1; 
enp1 = rste1.getInt(2); 
enpt1 = enpt1+enp1; 
enz1 = rste1.getInt(3); 
enzt1 = enzt1+enz1; 
} 
while(rste2.next()) 
{ 
e2 = rste2.getInt(1); 
e2t[i] = e2t[i]+e2; 
enp2 = rste2.getInt(2); 
enpt2 = enpt2+enp2; 
enz2 = rste2.getInt(3); 
enzt2 = enzt2+enz2; 
} 
while(rste3.next()) 
{ 
e3 = rste3.getInt(1); 
e3t[i] = e3t[i]+e3; 
enp3 = rste3.getInt(2); 
enpt3 = enpt3+enp3; 
enz3 = rste3.getInt(3); 
enzt3 = enzt3+enz3; 
} 

我需要更換enpt1,enpt2,enpt3 ...等與enpt1 [I],enpt2 [I],enpt3 [我很快。

請幫忙。

回答

2

正則表達式:

enpt\d+ 

上述正則表達式將符合所有enpt具有以下的一個或多個數位一起。 $0在替換部件的意思是,用匹配的字符替換匹配的字符。所以它會被打印。但是我們增加了[i]$0一起,所以匹配enpt1,2,3將由enpt1[i],2[i],...

替換字符串替換:

$0[i] 

DEMO

+0

可以請你解釋一下?+ ..它工作正常 – Assassin 2014-09-03 04:35:39

+0

@ManishSahni解釋.. – 2014-09-03 04:53:49

+0

感謝@Avinash .. :) – Assassin 2014-09-03 05:09:07

0

你正在尋找的正則表達式爲:

/enpt[1-3]/ 

of c ourse [1-3]可以擴展到[0-9]包括更多的數字,並用+將包括1個或多個字符,如[0-9]+