Regular expressions (regex) question for parsing

From: Date: Mon, 22 Dec 2008 20:56:45 +0000
Subject: Regular expressions (regex) question for parsing
Groups: php.general 
Request: Send a blank email to php-general+get-284976@lists.php.net to get a copy of this message
Hi, I'm looking for some ideas on the best way to parse blocks of text that is formatted such as: $sometext %\r\n -- good data $otherstring %\r\n -- good data $andyetmoretext %\r\n -- good data $finaltext -- bad data (missing ending) Each line should start with a $dollar sign, then some arbitrary text, ends with a percent sign, followed by carriage-return and line-feed. Sometimes though, the final line is not complete. In that case, I want to save those lines too. ....so that I end up with an array like: $result = array ( "matches" => array ( 0 => "$sometext %\r\n", 1 => "$otherstring %\r\n", 2 => "$andyetmoretext %\r\n" ), "non_matches" => array ( 3 => "$finaltext" ) ); The key thing here is that the line numbers are preserved and the non-matched lines are saved... Any ideas, what's the best way to go about this? Preg_matc, preg_split or something incorporating explode? ....Rene

« previous php.general (#284976) next »