Jonas Schmeltz Aaberg <julledyret@e-mail.dk> writes:
> Jeg har et problem mht. at fjerne nogle tegn rundt omkring i min
> tekststreng.
> Et eksempel på en streng:
> 00000000001000000.00000000001100001.00000000100000001
>
> Følgende skal jeg have gjort:
> - Alle 10 nuller før det første 1-tal i første del (før første
> punktum) skal fjernes.
> - Alle 10 nuller før det første 1-tal i anden del (efter første
> punktum - til andet punktum) skal fjernes.
> - Alle 8 nuller før det første 1-tal i tredje del (efter andet
> punktum) skal fjernes.
> Og intet andet!
Er du sikker på at der er et 1-tal i hver del (og ikke en gruppe med
rene nuller)?
> Antal "dele" er vilkårlig, ligesom antallet af nuller før første
> forekomst af et 1-tal.
Der er mange forskellige måder at gøre det på.
I moderne browsere (IE 5.5+) kan man bruge replace til det:
---
streng = streng.replace(/\b0*(1[01]*)\b/g,"$1");
---
Tidligere browsere (fx Netscape 4, IE5) tillod kun at man replace'de med en
fast streng.
Alternativt kan man splitte ved punktummerne og så finde 1-tallet i hver
gruppe:
---
var arr = streng.split(".");
for (var i in arr) {
arr[i]=arr[i].substring(arr[i].indexOf("1"));
}
streng = arr.join(".");
---
Dette virker også i Netscape 4.
/L
--
Lasse Reichstein Nielsen - lrn@hotpop.com
Art D'HTML: <URL:
http://www.infimum.dk/HTML/randomArtSplit.html>
'Faith without judgement merely degrades the spirit divine.'