Forgot to mention this is to be run after
eregi_replace("([[:alnum:]]+)://([^[:space:]]*)([[:alnum:]#?/&=])", "<a
href=\"\\1://\\2\\3\" {$t}\">\\1://\\2\\3</a>", $str);
as it only replaces long strings within <a> tags


Marek Kilimajer wrote:


$str = preg_replace('|(<a[^>]*>[^<]{55})[^<]+(</a>)|','$1...$2', $str);

Justin French wrote:

Hi, I have this ereg to turn URLs into links:

eregi_replace("([[:alnum:]]+)://([^[:space:]]*)([[:alnum:]#?/&=])", "<a
href=\"\\1://\\2\\3\" {$t}\">\\1://\\2\\3</a>", $str);

... found it in the manual i think, or maybe on weberdev.com examples


Anyhoo, it places the whole link in between the <a...> and </a>, which is
fine for short links, but on longer links (in my case, around 60+ chars), it
messes with my table or CSS layout.


So, I'd like to subtr() the 2nd capture part down to 55 chars or something
IF it's longer than 60, and append a ... to it.


ANY ideas on how this is done? Or is this beyond regexp??


TIA


Justin








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



Reply via email to