您的位置:程序门 -> web 开发 -> asp



正则表达式帮我完善下


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


正则表达式帮我完善下[已结贴,结贴人:ywqxtx]
发表于:2008-01-16 11:30:53 楼主
<%  
dim       tempstr  
tempstr="   <p>   新闻内容   <img       height="高度是变化的"       width="宽度也是变化的"       alt=""       src="/news/pic/2008-1/image/fl200801070943422936.gif"       />   </p>   "  
dim   objregexp  
set   objregexp=new       regexp  
objregexp.ignorecase               =               true  
objregexp.global               =               true  
objregexp.pattern="   <img   src='.+?'>   "  
set       matches   =   objregexp.EXECute(tempstr)  
objregexp.pattern="src='.+?'"  
for   each           match   in   matches  
set       matches1=objregexp.EXECute(match.value)  
aa=aa       &       replace(replace(matches1(0).value,"src=",""),"'","")       &"@"  
next  
aa=left(aa,len(aa)-1)  
response.write(aa)       &"   <br>   "  
bb=split(aa,"@")  
for       i=0       to       ubound(bb)  
response.write(bb(i))       &"   <br>   "  
next  
%>      

-----------------------上面的正则表达式,是要读取新闻内容中的图片的路径,新闻内容是会变的,也就是要判断有没有图片,如果有的话不同的新闻内容图片的高度和宽度是会变化的。
发表于:2008-01-16 11:57:391楼 得分:5
vbscript code
[上略] objregexp.pattern = "<img[^>]*?src\s=\s['""]?([^'""\s>]*)[^>]*>" ... for each ... next 改成 while objregexp.EXECute(tempstr) aa = regexp.$1 loop
发表于:2008-01-16 12:04:142楼 得分:0
....
asp里哪有regexp.$1啊   -   -
发表于:2008-01-16 12:09:573楼 得分:10
vbscript code
"<img(?:""[^""]*""|'[^']*'|[^""'>]+)+src=(?:""([^""]*)""|'([^']*)'|([^""'> ]+))" set m = reg.EXECute(串) 然后取 m(0-n).submatches(0) & m(0-n).submatches(1) & m(0-n).submatches(2) 就是捕获到的内容了
发表于:2008-01-16 12:12:324楼 得分:5
这个是取一个..
如果取多个的话,必须要把匹配img结束的话加上,否则会出bug...

vbscript code
"<img(?:""[^""]*""|'[^']*'|[^""'>]+)+src=(?:""([^""]*)""|'([^']*)'|([^""'> ]+))(?:""[^""]*""|'[^']*'|[^""'>]*)>"


大概是这样,没测试过..


快速检索

最新资讯
热门点击