[Web2.0] string to array

Cristiano Verondini cristiano a verondini.it
Ven 14 Set 2007 15:38:50 CEST


> var text='0:ragioneSociale|required
> 1:codiceFiscale|cf|pre-condition
> 2:codiceFiscale|piva||pre-condition
> 3:2|or|5|Regole (1 o 2) non soddisfatte';

    Occhio che mozilla non è molto felice sulle dichiarazioni di stringa 
multilinea.

> Quello che non riuscivo a capire era che la exec si poteva reiterare...
> e prendeva sempre la riga successiva...
>
>        var myRe=/\s*([0-9]+)\:(.+)\s*/gi
>        var A,i,n,B=Array();
>
>        var diverr=$(obj).find('div[rel="modalErrors"]')[0];
>        while (A=myRe.exec(text)){
>            n=A.length;
>            B[A[1]]=A[2];
>        }
>
>       call yavVal
>
> c'è un modo migliore?

    Al momento non mi viene in mente nulla. Si tratta di vedere se è più 
veloce usare la regex oppure una serie di split:

   var text = '0:ragioneSociale|required\n\r'
    + '1:codiceFiscale|cf|pre-condition\n\r'
    + '2:codiceFiscale|piva||pre-condition\n\r'
    + '3:2|or|5|Regole (1 o 2) non soddisfatte';

   var A = Array(), v = text.split('\n\r');
   for (var l = 0, m = v.length; l < m; l++) {

    var t = v[ l ].split(':');
    A[ t[0] ] = t[1];
   }


-- 
Cristiano Verondini
http://www.verondini.it  ---   [ICQ: 114 190] 



Maggiori informazioni sulla lista Web2.0