希望preg从字符串替换域

时间:2011-06-22 14:35:03

标签: php preg-replace

使用什么正则表达式从字符串中删除域?我尝试了几种组合,我想出的壁橱工作预计会在发现不止一次的匹配后删除所有内容。

$string = 'The quick brown fox <img src="http://domain.com/images/fox.jpg"> jumps over the lazy dog.';
preg_replace('/http:\/\/(.*)domain.com/', '', $string);`

在img和href src中查找并删除以下组合www.domain.com,domain.com和subs.domain.com。

2 个答案:

答案 0 :(得分:4)

你的.*贪婪。它将消耗尽可能多的字符以满足匹配。在它之后添加一个?,使其非贪婪:

preg_replace('/http:\/\/(.*?)domain\.com/', '', $string);

答案 1 :(得分:1)

你需要逃离终点站......

/http:\/\/[a-z\.]+domain\.com/