08. september 2008 - 15:19Der er
6 kommentarer og 1 løsning
Fra Array(String) til RegExp
Hej
Jeg har en streng af data, som jeg skal opdele.
Lige nu anvender jeg Array, som kommer fra en streng, med en Split på.
--------------- Kode eks. --------------- var tmpArray = new Array(); var Data = new Array();
Data = output.split(”[;]”);
For(var i in Data){ tmpArray = Data[i].split("[:]"); } --------------- Data streng(output) Data splitter: [:] og [;] --------------- 1[:]1[:]524[:]Aktiviteter[:]Kim = 25[;]2[:]0[:]157[:]Ting[:]Simon = 4016, Larsen = 21, Tim = 20[;] ---------------
Mit problem er så, at denne form for data gennemgang er meget langsom.
Her ville jeg godt anvende regular expressions, hvis jeg derved opnår hurtigere ”kode” :-)
Men da dette(RegExp) ikke er min stærke side, skal jeg bruge lidt hjælp?
- du kunne også bruge RegExp, men jeg tvivler på, det er hurtigere:
var s = "1[:]1[:]524[:]Aktiviteter[:]Kim = 25[;]2[:]0[:]157[:]Ting[:]Simon = 4016, Larsen = 21, Tim = 20[;]"; var aArr = []; s.replace(/(.*?)\[;\](.*?)/g, function(a,b,c){aArr.push(b.split(/\[:\]/))});
- så vil 'aArr' være et mulitidimensionelt array med dine data
Selvtak. Nej, det tror jeg ikke, men det er ikke noget, jeg har testet. Test selv ... så ved du med sikkerhed, hvad der er hurtigst. Hvor meget hjalp det med en hurtigere løkke?
var nLen = Data.length-1; do { tmpArray[nLen] = Data[nLen].split("[:]"); } while(i--);
- og tak for points, forresten =)
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.