Brilliant. (Sort of) Thats the answer I needed thankyou. I was not sure as to whether regexp could do recursive matching and now I know.
Thankyou for your help. > You won't be able to do that with a regexp alone. Recursively matching > isn't possible. You'll need a little help from some additional code. > > <?php > $string = "wed-thurs 9:35, 14:56, 18:35"; // YOUR STRING > $regexp = "^([a-z]+)-([a-z]+)[\ ]+(.*)$"; > // GETS (day)-(day) (any/all times) > $find = ereg( $regexp, $string, $matches ); > $times = explode( ",", $matches[3] ); // BREAK APART (.*) > print( $matches[1] . "<br>\n" . $matches[2] . "<br>\n" ); > while( list( $key, $val ) = each( $times ) ){ > print( trim( ${val} ) . "<br>\n" ); > } > ?> > > That seems to do the trick. Hopefully that gets ya closer to where you > want to go. If you really needed to regexp match on the times, you can > do that within the while loop. > > g.luck, > ~Chris /"\ > \ / Microsoft Security > Specialist: > X The moron in Oxymoron. > / \ http://www.thebackrow.net > > On Mon, 25 Mar 2002, Cameron Just wrote: > >> Hi, >> >> I am trying to pull out the following information via a regular >> expression. >> >> The string I am searching on is 'wed-thurs 9:35, 14:56, 18:35' >> >> and I want it to retreive >> wed >> thurs >> 9:35 >> 14:56 >> 18:35 >> >> The regular expression I am using is >> ([a-z]+)-([a-z]+) +([0-9]{1,2}:?[0-9]{0,2})[, ]* >> >> It seems to be grabbing the >> wed >> thurs >> 9:35 >> but I can't seem to retrieve the rest of the times. >> >> Anyone have any ideas? >> >> BTW >> There can be any number of 'times' in the string and also the 'times' >> can be with or without the colon and the minutes, hence the >> '}:?[0-9]{0,2}' part of the regexp. -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php