Hi Shaun,
Thanks a lot for your help. But was tying to avoid using the loop,
given that it might slow down the process if there are a lot of items
matching the regexp.
Claudia
On Wed, Apr 23, 2008 at 8:46 PM, shaun <[EMAIL PROTECTED]> wrote:
>
>
>
>
>
>
> Hi Claudia,
>
>
>
> Claudia Barnal wrote:
> > Hi there,
> >
> > I have a string that needs to have some portions extracted through
> > regexp and add them to an array.
> >
> > the string is something like this:
> >
> > "<fruits><banana /><orange /></fruits> <vehicles><suv /><pickup
> > /><vehicles> <fruits><apple /><banana /></fruits>"
> >
> > So the regexp should return all that's between all <fruits> and
> > </fruits> in this case, it should be something like this:
> > "<banana /><orange /><apple /><banana />"
> >
> > then using
> > myArray = myString.split(myRegexp);
> >
> > I would get an array that looks like this
> > ["<banana /><orange />", "<apple /><banana />"]
> >
> > I've tried this regexp: "<fruits>.*?</fruits>" but it's not really
> > working, as it gives me whatever is outside the fruit nodes.
> >
> > Any pointers?
> >
>
> private function init():void{
>
> var s:String = "<fruits><banana /><orange /></fruits>"+
>
> "<vehicles><suv /><pickup/><vehicles> <fruits>"+
> "<apple /><banana/></fruits>";
>
> var r:RegExp = /<fruits>([\w\s><\\\/]*?)<\/fruits>/gi;
> var result:Array;
>
> do {
>
> result = r.exec(s);
>
> if (result!=null)
> trace(result[1]);
>
> }while(result!=null);
> }
>
> HTH.
>
> cheers,
> - shaun
>
>