php正则匹配>,php正则匹配类

/**

* @desc:正则匹配类

* @author [Lee] ]>

* @method

* 1、geturl 获取所有超链接

* 2、getimg 获取所有图片

* 3、getaudio 获取所有音频文件

* 4、getvideo 获取所有视频文件

* 5、getparagraph 获取所有段落

* 6、getuser 获取自定义内容 preg 自定义正则,如:/

(.*)

/Ui

*/

class match{

private $content = '';

/*

@desc:构造方法,初始化待匹配文本

*/

public function __construct($content){

$this->content = $content;

}

/*

@desc:获取所有超链接

@return:所有匹配的超链接

*/

public function geturl(){

$content = $this->content;

$preg = '/\'\"\ ]*).*?>/i';

$bool = preg_match_all($preg,$content,$res);

$urls = array();

if($bool){

$urls = $res[1];

}

return array_unique($urls);

}

/*

@desc:获取所有图片

@return:所有匹配的图片

*/

public function getimg(){

$content = $this->content;

$preg="/(src)=(\\\?)([\"|']?)([^ \"'>]+\.(gif|jpg|jpeg|bmp|png|svg))\\2\\3/i";

$bool = preg_match_all($preg,$content,$res);

$imgs = array();

if($bool){

$imgs = $res[4];

}

return array_unique($imgs);

}

/*

@desc:获取所有音频文件

@return:所有匹配的音频文件

*/

public function getaudio(){

$content = $this->content;

$preg="/(src)=(\\\?)([\"|']?)([^ \"'>]+\.(mp3|wav|wma|ogg|ape|acc))\\2\\3/i";

$bool = preg_match_all($preg,$content,$res);

$audios = array();

if($bool){

$audios = $res[4];

}

return array_unique($audios);

}

/*

@desc:获取所有视频文件

@return:所有匹配的视频文件

*/

public function getvideo(){

$content = $this->content;

$preg="/(src)=(\\\?)([\"|']?)([^ \"'>]+\.(swf|flv|mp4|rmvb|avi|mpeg|ra|ram|mov|wmv)((\?[^ \"'>]+)?))\\2\\3/i";

$bool = preg_match_all($preg,$content,$res);

$videos = array();

if($bool){

$videos = $res[4];

}

return array_unique($videos);

}

/*

@desc:获取所有段落文本

@return:所有匹配的段落文本

*/

public function getparagraph(){

$content = $this->content;

$preg="/

(.*)/Ui";

$bool = preg_match_all($preg,$content,$res);

$paragraphs = array();

if($bool){

$paragraphs = $res[1];

}

return array_unique($paragraphs);

}

/*

@desc:获取所有自定义内容

@return:所有匹配的自定义内容

*/

public function getuser($preg){

$content = $this->content;

$bool = preg_match_all($preg,$content,$res);

$users = array();

if($bool){

$users = $res[1];

}

return array_unique($users);

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值