and this is the PHP_EOL solution: $dtd = preg_replace( "/[". PHP_EOL . "]+/", "". PHP_EOL . "", $dtd); dont ask me why two empty strings are needed to surround the PHP_EOL but its does it. Why this works? we have got an INTERPRETER here any \n is transtlated into 0x0D an \r into 0x0A so the pattern does not reach prce as '\n' hehe "Martin Scotta" <martinscotta@xxxxxxxxx> wrote in message news:6445d94e0909040653i44716f79m972f1105559901a@xxxxxxxxxxxxxxxxx > On Fri, Sep 4, 2009 at 10:37 AM, Ralph Deffke <ralph_deffke@xxxxxxxx> wrote: > > > the problem is some have got \t\n > > some are just \n\n....\n > > > > using PHP_EOL is a must > > > > I thing must be something with the /../sm attributes to the regex, spend > > like half an hour, but didn't get it, I'm running against a dead line, > > doesn't seem to be that easy if regex is not the everydays need u have > > > > > > "Ashley Sheridan" <ash@xxxxxxxxxxxxxxxxxxxx> wrote in message > > news:1252071327.24700.152.camel@xxxxxxxxxxxx > > > On Fri, 2009-09-04 at 15:28 +0200, Ralph Deffke wrote: > > > > ok > > > > preg_replace( "/^\s*$/m", "", $somestring) > > > > does not take empty lines out > > > > > > > > "Ashley Sheridan" <ash@xxxxxxxxxxxxxxxxxxxx> wrote in message > > > > news:1252069539.24700.150.camel@xxxxxxxxxxxx > > > > > On Fri, 2009-09-04 at 14:58 +0200, Ralph Deffke wrote: > > > > > > Hi all, I'm a bit under stress, maybe somebody knows the regex on a > > > > snap. > > > > > > using PHP_EOL would be great. > > > > > > > > > > > > thanks > > > > > > ralph_deffke@xxxxxxxx > > > > > > > > > > > > > > > > > > > > > > > The regex that would match a line containing only whitespace would > > look > > > > > like this: > > > > > > > > > > ^\s*$ > > > > > > > > > > Thanks, > > > > > Ash > > > > > http://www.ashleysheridan.co.uk > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > Are the lines actually whitespace, or are they actually <br/> tags that > > > are inserting lines to format the page for HTML display? > > > > > > Thanks, > > > Ash > > > http://www.ashleysheridan.co.uk > > > > > > > > > > > > > > > > > -- > > PHP General Mailing List (http://www.php.net/) > > To unsubscribe, visit: http://www.php.net/unsub.php > > > > > The PHP_EOL is system dependent. If you want a solution that works on every > type of file you have to code it yourself. Here you have a function made > some time ago. > Maybe you can improve it. > > If you want the result as a text format you can implode( PHP_EOL, $buffer ) > Hope this helps you. > > function explode($code) > { > $lines = array(); > $buffer = ''; > > for($i=0, $len = strlen($code); $i<$len; ++$i) > switch( $code{$i} ) > { > case "\r": > case "\n": > if( $i+1 == $len ) > break 2; > > if( "\r" == ($next = $code{ $i+1 }) || "\n" == $next ) > { > ++$i; > } > > $lines[] = $buffer; > $buffer = ''; > break; > default: > $buffer .= $code{$i}; > } > > if( '' !== $buffer ); > $lines[] = $buffer; > > return $lines; > } > > > -- > Martin Scotta > -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php