Lid |
|
Beste mensen,
Ik heb een code (kant en klaar van internet) om plaintext op te maken zoals op twitter. Dus gebruikersnamen, hashtags en url's worden linkjes.
Maar als ik een link stuur met aan het eind een cijfer werkt het niet goed: de link wordt dan totaan het cijfer gemaakt, niet met het cijfer erbij...
De code die ik gebruik:
function tweetify($string) {
$returnstring = preg_replace('/\b((?:[a-z][\w-]+:(?:\/{1,3}|[a-z0-9%])|www\d{0,3}[.]|[a-z0-9.\-]+[.][a-z]{2,4}\/)(?:(?:[^\s()<>.]+[.]?)+|\((?:[^\s()<>]+|(?:\([^\s()<>]+\)))*\))+(?:\((?:[^\s()<>]+|(?:\([^\s()<>]+\)))*\)|[^\s`!()\[\]{};:\'".,<>?���«���»�¢ï¿½ï¿½�¢ï¿½ï¿½�¢ï¿½ï¿½�¢ï¿½ï¿½]))/i','<a target=_blank href=$1>$1</a>',$string);
$returnstring = preg_replace('/[\@]+([A-Za-z0-9-_]+)/i','<a target=_blank href=http://twitter.com/$1>@$1</a>',$returnstring);
$returnstring = preg_replace('/(?:^| )[\#]+([A-Za-z0-9-_]+)/i','<a target=_blank href=http://search.twitter.com/search?q=&tag=$1&lang=all>#$1</a>',$returnstring);
return $returnstring;
}
function tweetify($string) { $returnstring = preg_replace('/\b((?:[a-z][\w-]+:(?:\/{1,3}|[a-z0-9%])|www\d{0,3}[.]|[a-z0-9.\-]+[.][a-z]{2,4}\/)(?:(?:[^\s()<>.]+[.]?)+|\((?:[^\s()<>]+|(?:\([^\s()<>]+\)))*\))+(?:\((?:[^\s()<>]+|(?:\([^\s()<>]+\)))*\)|[^\s`!()\[\]{};:\'".,<>?���«���»�¢ï¿½ï¿½�¢ï¿½ï¿½�¢ï¿½ï¿½�¢ï¿½ï¿½]))/i','<a target=_blank href=$1>$1</a>',$string); $returnstring = preg_replace('/[\@]+([A-Za-z0-9-_]+)/i','<a target=_blank href=http://twitter.com/$1>@$1</a>',$returnstring); $returnstring = preg_replace('/(?:^| )[\#]+([A-Za-z0-9-_]+)/i','<a target=_blank href=http://search.twitter.com/search?q=&tag=$1&lang=all>#$1</a>',$returnstring); return $returnstring; }
En het twitter-bericht waarbij het niet werkt:
"Working on the new website of the partnership. Unfortunately, it is only accessible with a password. http://t.co/fz2YRe3 "
Hoe verhelp ik dit probleem? Ik snap echt niks van al die tekenreeksen
|