Chinaunix首页 | 论坛 | 博客
  • 博客访问: 317262
  • 博文数量: 128
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 1611
  • 用 户 组: 普通用户
  • 注册时间: 2013-08-19 11:49
文章分类

全部博文(128)

文章存档

2018年(2)

2016年(2)

2014年(10)

2013年(114)

我的朋友

分类: Web开发

2013-11-13 09:47:18

有些时候,我们需要对一些html文本进行处理,比如需要将文本中的超链接内容去除,这个时候就需要用到正则表达式

可以用$str = preg_replace("/]*href=[^>]*>|<\/[^a]*a[^>]*>/i","",$strhtml); 这段来实现需求,如果想要更多解决方法,可以参看以下的。
1、删除内容中的超链接
 代码如下:

ereg_replace(']*)>([^<]*)','\\2',$content);
ereg_replace("]*>|<\/a>","",$content);

2、消除包含特定词的超链接
 代码如下:

$find="this string is my find";
$string='替换掉了';//将超链接替换成的内容
echo ereg_replace(']*)>([^<]*'.$find.'[^>]*)
','\\2',$content);

3、获取超链接文本内容
 代码如下:

//方法一
preg_match_all('/<(a|a)[s]{0,1}[w=":()]*>[nrn]*(check user)[nrn]*/i',$string,$matches);

//方法二
preg_match_all('/check user/i',$string,$matches);
print_r($matches);

//方法三
preg_match_all('/]*>[^<]*/i',$string,$matches);
print_r($matches);

//方法四
preg_match_all('/check user/is',$str,$arr);
print_r($arr);

//方法五
preg_match_all('/check user/is',$str,$arr);
print_r($arr);
阅读(1613) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~