Re: Need regular match help - possibly
| From: | liljim | Date: | Thu, 22 Nov 2001 10:14:50 +0000 |
| Subject: | Re: Need regular match help - possibly | ||
| References: | 1 2 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-75490@lists.php.net to get a copy of this message | ||
Thinking about it, this would probably be even better:
$string = preg_replace("/(\n|<br>){3,}/i", "\\1\\1\\1", $string);
This:
$string = "This is a
\n\n\n\n\n\n\n\n\n\n\ntest\nTesting\nTesting\n\n123<br><br><br><br><br><br><
br><br><br><br><br>Some more
br>testing<br><br><br><br><br><br><br><br><br>And
a little
more<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
<br><br><br><br><br><br><br><br><br><br><br><br><br><br>Even
more.";
Then outputs as this:
This is a <br />
<br />
<br />
test<br />
Testing<br />
Testing<br />
<br />
123<br><br><br>Some more testing<br><br><br>And a little
more<br><br><br>Even more.
when echo'd with nl2br()
As a side note, does anyone know what's with the <br> tag changing to <br
/>? That's the way I've always used the line break tag for wml pages, but
hadn't realised that it's being written that way for standard html now. Is
this a change in spec?
James
"Liljim" <liljim@liljim.co.uk> wrote in message
news:20011122091435.21057.qmail@pb1.pair.com...
> Hello Gaylen,
>
> try this:
>
> $string = preg_replace("/\n{3,}/", "\n\n\n", $string);
>
> James
>
> "Gaylen Fraley" <gfraley5@earthlink.net> wrote in message
> news:20011122035622.91897.qmail@pb1.pair.com...
> > I need a routine that will allow me to trap multiple <br> and/or line
feed
> > characters and convert them to a constant number. As an example, let's
> say
> > that you have text that has 10 carriage returns and/or line feeds. I
want
> > to limit this to 3. So, I need to be able to parse the line to detect
the
> > multiple control characters and convert the string to 3. So if the
string
> > looked something like:
> >
> > This is \n\n\n\n\n\n\n\n\n\n a test.
> >
> > I would want it converted to
> >
> > This is \n\n\n a test.
> >
> >
> > Conceivably, it could be
> >
> > This is <br><br><br><br><br> a test.
> >
> > I would want it converted to
> >
> > This is <br><br><br> a test.
> >
> >
> > I know I could write a do/while loop, but I was wondering if there is a
> way
> > using eregi_replace or something along that line?
> >
> > Thanks!
> >
> >
>
>