请教ASP 正则高手一个规则的写法,感谢!
我想写一个通用的正则规则,用于采集新闻时提取想要的内容,这个内容出现的次数不确定,有时候可能不出现,有时候可能出现几十次。
被采集的内容一:新浪的博客,其中这样的代码我想替换
原内容:<img real_src ="http://s1.sinaimg.cn/middle/5919b50et693500716de0" /></A>
通过规则采集提取 http://s1.sinaimg.cn/middle/5919b50et693500716de0
被采集的内容二:
文章内容文章内容文章内容文章内容文章内容文章内容文章内容文章内容文章内容文章内容文章内容文章内容
<div id=yued>
<div class=tit>新闻推荐阅读</div>
<div class=yuebox><!--新闻图片区 -->
<div class=imgcon><a href="#" target=_blank><img border=0 alt="" src="#" width=104 height=90></a><span><a href="#" target=_blank>标题一</a><br><a href="#" target=_blank><strong>标题2</strong></a><br></span>
<div class=clear></div></div><!--图区 结束-->
<div class=testlinh><a href="#" target=_blank>标题3</a></div>
<ul class=testlinhul>
<li><a href="#" target=_blank>标题4</a></li>
<li><a href="#" target=_blank>标题5</a></li>
<li><a href="#" target=_blank>标题6</a></li>
<li><a href="#" target=_blank>标题7</a></li>
<li><a href="#" target=_blank>[标题8]</a><a href="#" target=_blank>标题9</a></li>
<li><a href="#" target=_blank>[标题10]</a><a href="#" target=_blank>标题11</a></li>
<li><a href="#" target=_blank>[标题12]</a><a href="#" target=_blank>标题13?</a></li>
</ul>
</div></div><!--新闻推荐阅读 结束-->文章内容文章内容文章内容文章内容文章内容文章内容文章内容文章内容文章内容文章内容文章内容文章内容文章内容文章内容文章内容
通过规则采集提取<div id=yued>与<!--新闻推荐阅读 结束-->中间的内容
我定义了一个函数 thtxt,这个函数由html的textarea事先定制,定制的规则:$*$代表不确定的内容,被替换的内容@@@@替换后的内容
针对第一个情况我的thtxt值为src="$*$"@@@@src="$参数1$.jpg”
针对第二个情况我的thtxt值为<div id=yued>$*$<!--新闻推荐阅读 结束-->@@@@Null
我的ASP正则处理如下:
zzz=split(thtxt,"@@@@")
If Instr(zzz(0),"$*$")>0 Then'如果包含$*$,进行特殊替换处理
b1=split(zzz(0),"$*$")
Set Re = New Regexp
Re.IgnoreCase = True
Re.Global = True
' Re.Pattern =b1(0)&".*?"&b1(1)&"" '----这种写法只对第一种情况有效,对第二种情况无效
Re.Pattern = b1(0)&"(.*?)"&b1(1) '----这种写法只对第二种情况有效,对第一种情况无效
Set Matches =Re.Execute(Content)
For Each Match in Matches
b2=Match.Value
If TempStr<>"" then
TempStr=TempStr & "$Array$" & b2
Else
TempStr=b2
End if
Next
c1=split(TempStr,"$Array$")
response.write "匹配到的内容:"&TempStr&"=============================="
end if
请问如何写规则 可以同时用于第一种和第二种情况 ?感谢
被采集的内容一:新浪的博客,其中这样的代码我想替换
原内容:<img real_src ="http://s1.sinaimg.cn/middle/5919b50et693500716de0" /></A>
通过规则采集提取 http://s1.sinaimg.cn/middle/5919b50et693500716de0
被采集的内容二:
文章内容文章内容文章内容文章内容文章内容文章内容文章内容文章内容文章内容文章内容文章内容文章内容
<div id=yued>
<div class=tit>新闻推荐阅读</div>
<div class=yuebox><!--新闻图片区 -->
<div class=imgcon><a href="#" target=_blank><img border=0 alt="" src="#" width=104 height=90></a><span><a href="#" target=_blank>标题一</a><br><a href="#" target=_blank><strong>标题2</strong></a><br></span>
<div class=clear></div></div><!--图区 结束-->
<div class=testlinh><a href="#" target=_blank>标题3</a></div>
<ul class=testlinhul>
<li><a href="#" target=_blank>标题4</a></li>
<li><a href="#" target=_blank>标题5</a></li>
<li><a href="#" target=_blank>标题6</a></li>
<li><a href="#" target=_blank>标题7</a></li>
<li><a href="#" target=_blank>[标题8]</a><a href="#" target=_blank>标题9</a></li>
<li><a href="#" target=_blank>[标题10]</a><a href="#" target=_blank>标题11</a></li>
<li><a href="#" target=_blank>[标题12]</a><a href="#" target=_blank>标题13?</a></li>
</ul>
</div></div><!--新闻推荐阅读 结束-->文章内容文章内容文章内容文章内容文章内容文章内容文章内容文章内容文章内容文章内容文章内容文章内容文章内容文章内容文章内容
通过规则采集提取<div id=yued>与<!--新闻推荐阅读 结束-->中间的内容
我定义了一个函数 thtxt,这个函数由html的textarea事先定制,定制的规则:$*$代表不确定的内容,被替换的内容@@@@替换后的内容
针对第一个情况我的thtxt值为src="$*$"@@@@src="$参数1$.jpg”
针对第二个情况我的thtxt值为<div id=yued>$*$<!--新闻推荐阅读 结束-->@@@@Null
我的ASP正则处理如下:
zzz=split(thtxt,"@@@@")
If Instr(zzz(0),"$*$")>0 Then'如果包含$*$,进行特殊替换处理
b1=split(zzz(0),"$*$")
Set Re = New Regexp
Re.IgnoreCase = True
Re.Global = True
' Re.Pattern =b1(0)&".*?"&b1(1)&"" '----这种写法只对第一种情况有效,对第二种情况无效
Re.Pattern = b1(0)&"(.*?)"&b1(1) '----这种写法只对第二种情况有效,对第一种情况无效
Set Matches =Re.Execute(Content)
For Each Match in Matches
b2=Match.Value
If TempStr<>"" then
TempStr=TempStr & "$Array$" & b2
Else
TempStr=b2
End if
Next
c1=split(TempStr,"$Array$")
response.write "匹配到的内容:"&TempStr&"=============================="
end if
请问如何写规则 可以同时用于第一种和第二种情况 ?感谢
...全文
相关推荐
asp.net 2.0 验证控件的正则表达式规则
主要讲解正则表达式含义、如何使用,方便使用asp.net ajax和asp.net等用户验证控件内容,有点繁琐,但只要掌握其中常用的就行了,网上揭下的,供大家共享,内有验证软件。
asp.net 利用正则表达式url重写
asp.net 利用在webconfig里添加正则表达式,对url重写
asp.net验证一个字符串是否符合指定的正则表达式
asp.net检验字符串是否满足指定正则表达式
asp 过滤尖括号内所有内容的正则代码
正常ASP中对录入内容的过滤仅仅是对左尖括号和右尖括号的HTML源码的替换,所以在页面中显示为左右尖括号,而不是将尖括号作为HTML标签执行了。
asp正则表达式使用详解
代码如下: Dim re Set re = new RegExp ‘创建RegExp实例 re.Pattern = “ab+c” ‘定义正则表达式文字,你可以在这里替换正则表达式 Dim myString myString = “abcefg” ‘定义要匹配的字符串,可以进行替换 Response.write(re.Execute(myString)(0)) ‘进行匹配测试,并写出结果 代码如下: <% Dim re Set re = new RegExp ‘创建RegExp实例 re.Pattern = “\w+” ‘定义正则表达式文字 Dim myString myString = “


