使用什么正则表达式从字符串中删除域?我尝试了几种组合,我想出的壁橱工作预计会在发现不止一次的匹配后删除所有内容。
$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。
答案 0 :(得分:4)
你的.*
贪婪。它将消耗尽可能多的字符以满足匹配。在它之后添加一个?
,使其非贪婪:
preg_replace('/http:\/\/(.*?)domain\.com/', '', $string);
答案 1 :(得分:1)
你需要逃离终点站......
/http:\/\/[a-z\.]+domain\.com/