您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

贪婪模式正则匹配的问题

2024/8/29 9:28:01发布32次查看
正文:
$content = 'http://www.taobao.com http://mai.taobao.com http://xx.uz.taobao.com http://yy.uz.taobao.com ';

期望得到:
[0] => http://xx.uz.taobao.com [1] => http://yy.uz.taobao.com

方法一:
$pat = '/http:\/\/(.*)\.uz\.taobao\.com/is';

结果:
[0] => http://www.taobao.com http://mai.taobao.com http://xx.uz.taobao.com http://yy.uz.taobao.com

方法二:
$pat = '/http:\/\/(.*)\.uz\.taobao\.com/ius';

结果:
[0] => http://www.taobao.com http://mai.taobao.com http://xx.uz.taobao.com [1]=>http://yy.uz.taobao.com

请问想得到我期望的值应该怎么写呢?
回复内容: 正文:
$content = 'http://www.taobao.com http://mai.taobao.com http://xx.uz.taobao.com http://yy.uz.taobao.com ';

期望得到:
[0] => http://xx.uz.taobao.com [1] => http://yy.uz.taobao.com

方法一:
$pat = '/http:\/\/(.*)\.uz\.taobao\.com/is';

结果:
[0] => http://www.taobao.com http://mai.taobao.com http://xx.uz.taobao.com http://yy.uz.taobao.com

方法二:
$pat = '/http:\/\/(.*)\.uz\.taobao\.com/ius';

结果:
[0] => http://www.taobao.com http://mai.taobao.com http://xx.uz.taobao.com [1]=>http://yy.uz.taobao.com

请问想得到我期望的值应该怎么写呢?
$content = 'http://www.taobao.com http://mai.taobao.com http://xx.uz.taobao.com http://yy.uz.taobao.com ';preg_match_all('/(https?:\/\/[^.]+\.uz\.taobao\.com)/i', $content, $match);print_r($match[1]);
so easy.
array(2) { [0] => string(23) http://xx.uz.taobao.com [1] => string(23) http://yy.uz.taobao.com }}
$content = ' sdfasdfasfas sdfsfasf http://mai.taobao.com http://xx.uz.taobao.com http://yy.uz.taobao.com ';$urls = explode('http://', $content);array_shift($urls);$res = [];foreach($urls as &$url) { $item = explode('taobao.com', $url); $url = http://{$item[0]}taobao.com; if(preg_match('/uz\.taobao\.com/', $url)) $res[] = $url;}print_r($res);//array ( [0] => http://xx.uz.taobao.com [1] => http://yy.uz.taobao.com )
$content = ' sdfasdfasfas sdfsfasf http://mai.taobao.com http://xx.uz.taobao.com http://yy.uz.taobao.com ';preg_match_all('/(http[^taobao]*?uz\.taobao\.com)/i', $content, $match);print_r($match[1]);//array ( [0] => http://xx.uz.taobao.com [1] => http://yy.uz.taobao.com )
另有一个小建议是:一步分成两步,先把url分拆,再对每个url做匹配。这样可以增强语义的直观性。
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product