请问asp里一正则问题,关于如何取得符合条件的内容。很急,大家帮忙~~

bigguazi 2004-04-12 09:52:25
CCCC[upload=XXX].......[/upload]CCCC

我想取得.......这个内容,该怎么写呢?
其中前后CCCC为不定长度的内容,XXX为jpg或img不定内容。

大家帮忙啊,急死我了55555
...全文
12 点赞 收藏 7
写回复
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
pizixt 2004-04-12
response.write Test("(\S+)(\[upload=.+?])(\S+)(\[/upload])(\S+)","cccc[upload=XXX]asdasdasd[/upload]cccc","$3")

这样就去掉了

方法给你了,自己稍微动下脑筋,不要只想别人给你一步到位
回复
bigguazi 2004-04-12
pizixt(皮子) ,你的方法没有去掉后面的CCC内容,用不了。
bybee(脑震荡的猪) ,虽然不是正则,但是改动了一下能用了,多谢。

结了,多谢大家:)
回复
pizixt 2004-04-12
上面忘了不匹配的情况,改一下

Function Test(patrn,str,replStr)
Set regEx = New RegExp
regEx.Pattern = patrn
regEx.IgnoreCase = true
if regEx.test(str) then Test = regEx.Replace(str,replStr)
set regEx=nothing
End Function

response.write Test("(\[upload=.+?])(\S+)(\[/upload])","[upload=XXX]test[/upload]","$2")
response.write Test("(\[upload=.+?])(\S+)(\[/upload])","[XXXupload=XXX]test[/upload]","$2")
%>
回复
pizixt 2004-04-12
Function Test(patrn,str,replStr)
Set regEx = New RegExp
regEx.Pattern = patrn
regEx.IgnoreCase = true
Test = regEx.Replace(str,replStr)
set regEx=nothing
End Function

response.write Test("(\[upload=.+?])(\S+)(\[/upload])","[upload=XXX]test[/upload]","$2")
回复
bybee 2004-04-12
str="CCCC[upload=XXX].......[/upload]CCCC"
str_arry=split(str,"[/upload]")
qustr=""
for i=0 to ubound(str_arry)
if instr(str_arry(i),"[upload=")<>0 then
qustr=qustr&mid(str_arry(i),instr(str_arry(i),"[upload=")+4)&"||"
end if
next
reponse.write(qustr)
回复
threezxw 2004-04-12
......代表你要取得的文字还别的什么东西呀
回复
bigguazi 2004-04-12
没有人知道吗?怎么办呢:(
回复
发动态
发帖子
ASP
创建于2007-09-28

2.8w+

社区成员

ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
申请成为版主
社区公告
暂无公告