Замена слов, начинающихся с @, ссылкой на твиттер

Мне нужно заменить все слова, начинающиеся с @ в тексте на соответствующую ссылку на этот твиттер-аккаунт. Прямо сейчас я использую что-то вроде этого:

$tweet_text = preg_replace('/(@\w+)/', '<a href=\'#\'>\1</a>', $string);

Это работает, но ссылка никуда не ведет. Я решил использовать комбинацию strpos() и substr(), чтобы получить настоящую слово, а затем иметь возможность ссылаться на этот аккаунт в Твиттере, но мне было интересно, есть ли лучшее решение. Есть идеи?

Примеры:

До замены:

'Imperfection is the new perfection... RT @xHausOfCandy: @katyperry i think your bottom teeth and your wonk eye make you even more adorable.'

После замены:

'Imperfection is the new perfection... RT <a href=''#''>@xHausOfCandy</a>: <a href=''#''>@katyperry</a> i think your bottom teeth and your wonk eye make you even more adorable.'

Желаемый:

'Imperfection is the new perfection... RT <a href=''http://twitter.com/xHausOfCandy''>@xHausOfCandy</a>: <a href=''http://twitter.com/katyperry''>@katyperry</a> i think your bottom teeth and your wonk eye make you even more adorable.'

Надеюсь, теперь стало понятнее!

0
задан luqita 2 June 2012 в 16:53
поделиться