正则表达式:匹配不是超级链接和图片的所有内容

riancroaker 2009-08-08 09:20:37
求一正则表达式
要求:匹配内容中不是超级链接(<a href="http://www.sohu.com"><font color=red><b>巴基斯坦</b></font></a>)和图片(<img alt="巴基斯坦" src="/Upfiles/巴基斯坦.jpg" />)标签的其他所有内容中的关键词

比如:我要匹配关键词:巴基斯坦

内容为:

<img alt="" src="/Upfiles/巴基斯坦.jpg" /><strong>两架携带导弹的直升asdfasdf机护卫记者座机</strong></p>
<p>  马哈苏德已被<a href="http://www.sohu.com"><font color=red><b>巴基斯坦</b></font></a>军队包围在南瓦济里斯坦地区的曼扎高地<span style="color: #ff6600">{dfdd},</span>这里是恐怖分子的天堂,也是美国情报部门认为的本·拉丹最可能的藏身处</p>
<p>  国际先驱导报驻巴基斯坦记者张宁报道 记者站

我只要匹配粗体字中的:巴基斯坦 超链和图片中出现的 巴基斯坦 不能匹配。

请正则表达式?
...全文
292 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
是要
function rekeyss(str,k)
Set re = New RegExp
re.IgnoreCase = True
re.Global = True
re.Pattern ="("& k &")(?![^<]*>)"
set Matches=re.Execute(str)
For Each Match in Matches
Sstr = Sstr & Match.Value
Next
rekeyss=Sstr
end function
response.Write rekeyss(str,"巴基斯坦")&"<br>"
这效果还是要
function rekeysss(str,restr)
Set re = New RegExp
re.Global = True
re.Pattern ="(?:<a[^>]*>)|(<\/a>)|(?:<img[^>]*>)"
str=re.Replace(str,restr)
rekeysss=str
end function
str="巴基斯坦<a href=""http://www.sohu.com""> <font color=red> <b>巴基斯坦 </b> </font> </a><img alt=""巴基斯坦"" src=""/Upfiles/巴基斯坦.jpg"" />"
response.Write rekeysss(str,,"")
这效果
第二种只是为了表示看你是不是要这效果,但不是根据关键字来选内容的
cg2003 2009-08-09
  • 打赏
  • 举报
回复
UP
  • 打赏
  • 举报
回复
(?!<a[^>]*>.+<\/a>)|(?!<img[^>]*>)
随手写没测试的
试下吧
wcwtitxu 2009-08-08
  • 打赏
  • 举报
回复

regex.Pattern = "巴基斯坦(?![^<]*>)"
riancroaker 2009-08-08
  • 打赏
  • 举报
回复
楼上的还像还是可以匹配超链和图片中的字符串。

我要的只是匹配不是超链和图片中的其他内容。

28,409

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧