高分再求--->正则表达式

歪歪 2004-09-15 12:00:45
给出标记,遍历所有标记,并得到标记内的指定内容

Function ReplaceTest(arr,tag)
'tag要取得标签内的信息,为空(双引号)则只取标记的内容
Dim regEx, str1
Set regEx = New RegExp
regEx.Pattern = patrn
regEx.IgnoreCase = True
regEx.Global=True
'----里面需要各位大虾帮助的内容-------------------------------------------
ReplaceTest = regEx.Replace(arr)
'-------------------------------------------------
End Function


str="cgg<a href=ss.asp target='_blank'>123456</a>"
str=str&"cieu834<a target='newwindo' href=sdvs.asp>8888</a>"
str=str&"<hr><a href=s33s.asp title='ccok'>vv6</a>"
str=str&"<hr><a href=bbs23.asp title='ccok' target='clsielwin'>kastr</a>"

如:
ca333=ReplaceTest(arr,"href")
则ca333的结果是:
ss.asp,123456,sdvs.asp,8888,s33s.asp,vv6,bbs23.asp,kastr
如:
ca333=ReplaceTest(arr,"")
则ca333的结果是:
123456,8888,vv6,kastr


求arr正则的写法,函数及参数等都可更改,只要达到示例的要求即可
先谢过
...全文
98 点赞 收藏 11
写回复
11 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
nchen123 2004-09-15
http://www.regexlib.net/REDetails.aspx?regexp_id=464
回复
歪歪 2004-09-15
我对正则表达式是盲区:),谢过了
回复
歪歪 2004-09-15
就是"正则简单"啊,但是只要能实现,什么都可,麻烦帖下代码,我对只个是盲区啊

谢谢
回复
klend 2004-09-15
不过还是正则简单:)
回复
klend 2004-09-15
不用正则也可以实现亚
回复
歪歪 2004-09-15
能给出相关参考也可,在线等侯大虾帮助,解决就结帖,分不是问题,可开新帖酬谢
回复
歪歪 2004-09-15
ok谢了
回复
歪歪 2004-09-15
好的,谢了,我看下
回复
klend 2004-09-15
我测试了,你看看还有问题吗:

Function ReplaceTest(arr,tag)

Dim regEx,Matches,Match
Set regEx = New RegExp
regEx.IgnoreCase = True
regEx.Global=True

if tag = "" then
regEx.pattern = ">\b.+?</a>"
end if

if tag = "href" then
regEx.pattern = "(\bhref=\w+?\.\w+?\b)|(>\b.+?</a>)"
end if


Set Matches = regEx.Execute(arr)

For Each Match in Matches
if instr(match.value,"<")>0 then
ReplaceTest = ReplaceTest & mid(Match.value,2,match.length-5) & ","
else
ReplaceTest = ReplaceTest & mid(Match.value,6,match.length-5) & ","
end if
Next

set regex = nothing
set matches = nothing

End Function
回复
歪歪 2004-09-15
E文.................
(小弟也是盲区)
回复
歪歪 2004-09-15
谢了,看看
回复
相关推荐
发帖
ASP
创建于2007-09-28

2.8w+

社区成员

ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
申请成为版主
帖子事件
创建了帖子
2004-09-15 12:00
社区公告
暂无公告