Re: Re: Removing link on the fly, but leave link text

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Ashley Sheridan wrote:
On Tue, 2010-08-31 at 17:15 -0300, Jo?o C?ndido de Souza Neto wrote:

Theres an eror.

The correct is:

$pattern = array(
    "/<a [^>]>/",
    "/</a>/"
 );

$text =  preg_replace($pattern, "", $text);


--
Joo Cndido de Souza Neto

""Joo Cndido de Souza Neto"" <joao@xxxxxxxxxxxxxxxxxxx> escreveu na mensagem news:D0.73.48953.EE16D7C4@xxxxxxxxxxxxxxx
Try this:

$pattern = array(
   "/<a [^>]/",
   "/</a>/"
);

preg_replace($pattern, "", $text);

--
Joo Cndido de Souza Neto

"Karl DeSaulniers" <karl@xxxxxxxxxxxxxxx> escreveu na mensagem news:007BC8E1-B2C8-4DD5-9D18-EB07B0D55C0E@xxxxxxxxxxxxxxxxxx
Hi,
Say I have some text.

$text = 'You can logon here: <a href="http://website.com/shop/
index.php?username='.$username.'">http://website.com/shop/index.php?
username='.$username.'</a>. This link will take you to your web
browser to login.'.$eol;

I want to be able to strip the "<a href="http://website.com/shop/
index.php?username='.$username.'">" and </a>.
Leaving just the http://website.com/shop/index.php?username='.
$username.' text, so it would end up like.


$text = 'You can logon here: http://website.com/shop/index.php?
username='.$username.'. This link will take you to your web browser
to login.'.$eol;

I have tried MANY different ways and have no success.
Can anyone help me?
TIA


Karl DeSaulniers
Design Drumm
http://designdrumm.com







Regular expressions are evil when used like this. Consider the following
valid HTML:

<a href="math_operators.php" title="The > Operator">The &gt;
Operator</a>

The HTML is perfectly valid, but the regex will break because it "see's"
the end of the tag prematurely from the > inside the title attribute
value.

However, if the HTML is going to be a very small subset in which you
will always know this sort of thing won't happen, then you could use the
regex.

Thanks,
Ash
http://www.ashleysheridan.co.uk




Here is the trail that I just went down.

http://www.w3.org/TR/html401/struct/links.html
lead me to here
http://www.w3.org/TR/html401/struct/global.html#adef-title
which lead me to here
http://www.w3.org/TR/html401/types.html#type-text
which lead me to here
http://www.w3.org/TR/html401/sgml/dtd.html#Text
which lead me to here
http://www.w3.org/TR/html401/types.html#type-cdata

To my final conclusion that values of attributes, although it isn't required, should be encoded and conversely will be decoded by the client.

So, not to say that you are wrong, but I would suggest that it might be better to explain that the example you suggested should have been written in the following way instead.

<a href="math_operators.php" title="The &gt; Operator">The &gt;
Operator</a>

All text that gets sent to the client, that has nothing to do with layout, should be ran through some type of cleaning & encoding method before being sent to the client.

Just my 2pennies...

Jim Lucas

--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux