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