|
@@ -223,7 +223,6 @@ class EReg {
|
|
|
b.addSub(s,pos,p.pos-pos);
|
|
|
if( a.length > 0 )
|
|
|
b.add(a[0]);
|
|
|
- var dollarCount = false;
|
|
|
for( i in 1...a.length ) {
|
|
|
var k = a[i];
|
|
|
var c = k.charCodeAt(0);
|
|
@@ -232,18 +231,14 @@ class EReg {
|
|
|
var p = regexp_matched_pos(r,c-48);
|
|
|
b.addSub(s,p.pos,p.len);
|
|
|
b.addSub(k,1,k.length - 1);
|
|
|
- dollarCount = false;
|
|
|
} else if( c == null ) {
|
|
|
- if (dollarCount){
|
|
|
- b.add("$");
|
|
|
- dollarCount = false;
|
|
|
- }
|
|
|
- else
|
|
|
- dollarCount = true;
|
|
|
- } else {
|
|
|
+ b.add("$");
|
|
|
+ i += 1;
|
|
|
+ var k2 = a[i];
|
|
|
+ if( k2 != null && k2.length > 0 )
|
|
|
+ b.add(k2);
|
|
|
+ } else
|
|
|
b.add("$"+k);
|
|
|
- dollarCount = false;
|
|
|
- }
|
|
|
}
|
|
|
var tot = p.pos + p.len - pos;
|
|
|
pos += tot;
|