2012-12-07 22 views
4

可能重复:
Remove urls using PHP从文本中使用PHP删除所有URL

我试图找出从文本与PHP删除网址的最佳途径。我已经在这里看过一堆不同的网站和问题,但无法将它们拼凑在一起。

我想删除类似下面的所有URL:

  1. www.website.com
  2. http://www.website.com
  3. website.com
  4. website.com /测试
  5. <标签> www.website.com < /标签>(其中<标签>是任何HTML标记)
  6. (www.website.com)

我已经尝试了一些解决方案,我发现在这里,但我无法弄清楚如何与接壤的字符不是网页地址的一部分获得网络地址,即括号或在一个HTML标记如<强>

任何帮助,非常感谢。

感谢

+1

你的问题有点混乱。你能否重新提出问题以使其更清楚? –

+1

你有多关心删除那些实际上不是URL的东西,而是*看起来像网址(例如'ASP.net'语言或以前称为'OpenOffice.org'的办公套件)? – Kitsune

+0

@DarylGill对不起,我没有注意到凌乱的格式(第一次在这里发布一个问题...我认为)。我清理它,并添加了一部分 – Makolyte

回答

4

也许......

// http(s):// 
    $txt = preg_replace('|https?://www\.[a-z\.0-9]+|i', '', $txt); 
    // only www. 
    $txt = preg_replace('|www\.[a-z\.0-9]+|i', '', $txt); 

或者:

$Var = str_replace("itemtoreplace", "replacewith", $variabletoremovefrom"); 

PHP Str_replace

用途: Remove urls using PHP

供参考。

+0

谢谢,我稍后会尝试了这一点,并让你知道 – Makolyte

+1

此外,OP问的形式 “ www.website.com(其中是所有的HTML标签)”,也:这样一来,

something.com
将被替换
。 –

+0

我在这些之后添加了这个,它得到了http:// google.com。 $ txt = preg_replace('| https?:// [a-z \ .0-9] + | i','WEBSITE',$ txt); – Makolyte