Hmm, maybe I am not understanding your needs. My pattern works on your example of "*&%*&^objectA()*&)(*&908objectB,objectC"
The resulting array contains: objectA 908objectB objectC Which is what I thought you wanted. Also, the problem in your RE *is* the non-capturing group which is consuming your 'objectB.' You can verify this by using a lookahead assertion (?=) instead of the noncapture (?:) group. var patt:RegExp = /([a-zA-Z0-9_]+)(?=\.?(?:[a-zA-Z0-9_]*))/g; This pattern results in the same output as my simple pattern using lookahead assertions. If these aren't the results you were looking for let me know and I can take another look. HTH Rob --- In [email protected], "Josh McDonald" <[EMAIL PROTECTED]> wrote: > > That will also match "*&%*&^objectA()*&)(*&908objectB,objectC" as well which > isn't what I'm trying to do. > > Like I said in the first post, I also tried throwing out the non-matching > group altogether and simply trying to get ["objectA",".objectB",".objectC"] > and discarding the dots in the loop (not nice, but better than not working > at all), and it didn't work. So I don't think the problem is that it's > wrapped in a non-matching group. > > On Fri, Oct 3, 2008 at 11:34 AM, mookie298347 <[EMAIL PROTECTED]> wrote: > > > Hi Josh, > > > > Your match is skipping over objectB because it is being "consumed" > > (and not captured) by this part of your regular expression: > > > > (?:\.([a-zA-Z0-9_]+))+ > > > > If you simply want to match all word characters between dots you can > > simply do: > > > > var str:String = 'objectA.objectB.objectC'; > > var patt:RegExp = /\w+/g; > > var matches:Object = str.match(patt); > > trace(ObjectUtil.toString(matches)); > > > > This captures all consecutive word character groups in the string. > > > > HTH > > > > Cheers, > > Rob > > > > > > --- In [email protected], "Josh McDonald" <dznuts@> wrote: > > > > > > Hey guys, > > > > > > I'm trying to turn this "objectA.objectB.objectC" into ["objectA", > > > "objectB", "objectC"] using a regex, but all I seem to get using > > > String.match() is ["objectA", "objectC"]. Can anybody tell me what's > > wrong > > > with the following? > > > > > > const multiLevelReferencePattern : RegExp = > > > /([a-zA-Z0-9_]+)(?:\.([a-zA-Z0-9_]+))+/; > > > > > > I also tried to match into ["objectA", ".objectB", ".objectC"] by > > throwing > > > out the non-matching group and rolling the "\." into the last matching > > > group, but I still get the same result (only the last match comes > > through). > > > > > > For now I've switched to a simpler regex in order to RegExp.test() the > > > string and then using String.explode(), but I would like to do both > > at once > > > using String.match() if possible. > > > > > > Cheers, > > > -Josh > > > > > > -- > > > "Therefore, send not to know For whom the bell tolls. It tolls for > > thee." > > > > > > http://flex.joshmcdonald.info/ > > > > > > :: Josh 'G-Funk' McDonald > > > :: 0437 221 380 :: josh@ > > > > > > > > > > > ------------------------------------ > > > > -- > > Flexcoders Mailing List > > FAQ: http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt > > Alternative FAQ location: > > https://share.acrobat.com/adc/document.do?docid=942dbdc8-e469-446f-b4cf-1e62079f6847 > > Search Archives: > > http://www.mail-archive.com/flexcoders%40yahoogroups.comYahoo! Groups > > Links > > > > > > > > > > > -- > "Therefore, send not to know For whom the bell tolls. It tolls for thee." > > http://flex.joshmcdonald.info/ > > :: Josh 'G-Funk' McDonald > :: 0437 221 380 :: [EMAIL PROTECTED] >

