我目前正在开发一个基于浏览器的Twitter小部件。
目前,我仍然坚持让URL工作。我有点新手,当涉及到正则表达式时(我知道,如何获取字符串的一部分,但这一个 - 很难)。
所以,我需要一个搜索/替换
的正则表达式www.domain.tld -> <a href="http://www.domain.tld">http://www.domain.tld</a>
有/无http://,最好是。
欢迎任何建议。感谢。
答案 0 :(得分:0)
这是我有多远:
www\.(?:\S*)\.(?:\S{2,3})
它检查www。在开始时,任何非空白字符和顶级域(2或3个字符)。
答案 1 :(得分:0)
我正在与RegExes进行一场永远的战争,我不喜欢他们。那么,我是否会这样做:
function get_domain_from_anchor($anchor, $delimiter = '"') {
return substr(strstr(strstr($anchor, $delimiter), $delimiter.'>', true), 8);
}
echo get_domain_from_anchor('<a href="http://www.domain.net">http://www.domain.net</a>');
// OUTPUTS: www.domain.net
好多了:D
答案 2 :(得分:0)
我相信这正是您所寻找的:PHP validation/regex for URL
有关提取网址的更多信息:Extract URLs from text in PHP
答案 3 :(得分:0)
试试twitter-text-php。它从官方Twitter代码移植到PHP。
来自README文件:
$autolinker = new Twitter_Autolink();
$html = $autolinker->autolink("Tweet mentioning @mikenz and refuring to his list @mikeNZ/sports and website http://mikenz.geek.nz");
echo $html;