要分的来解答!很简单的!

fuabc81 2008-11-25 08:59:33
下面一个文本文件!
取<ul></ul>中的数据!并保存入库

<div class-"cp">

<ul>
<li>产品名称</li>
<li>产品说明</>
<li>aaa</>
<li>bbb</>
<li>ccc</>
</ul>

<ul>
<li>产品名称</li>
<li>产品说明</>
<li>aaa</>
<li>bbb</>
<li>ccc</>
</ul>

</div>
...全文
170 点赞 收藏 19
写回复
19 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
dgboby 2008-11-27
那个正则不管多少数据,都能提取,正则本来就是提取你表达方式的数据,是全局搜索,设置了
回复
yeah920 2008-11-26
学习了.
回复
kindwell 2008-11-26
不想用正则的话,也可以试试用
document.getElementsByTagName("ul");
回复
wangbin1986 2008-11-26
同意
回复
dgboby 2008-11-26
dim str,pd
str="<div class=cp><ul><li>产品名称 </li> <li>产品说明 </><li>aaa </><li>bbb </><li>ccc </></ul><ul><li>产品名称 </li> <li>产品说明 </><li>aaa </><li>bbb </><li>ccc </></ul>"
call xml_mynews(str,"<ul>\s*<li>([^</li>]+)</li>.+?(.|\n)*?</ul>")



function xml_mynews(str,pd)
Set objRegExp1 = New Regexp
objRegExp1.IgnoreCase = True
objRegExp1.Global = True
objRegExp1.Pattern =pd
set mm=objRegExp1.Execute(str)
For i= 0 to mm.count -1
sheng_title=objRegExp1.Replace(mm.item(i),"$1")

response.write sheng_title&"<br>"
Next
set objRegExp1=nothing
end function

'输出
'产品名称
'产品名称
回复
fuabc81 2008-11-26
功能完成了!
但如果我这里再多一行!
call xml_mynews(str,"<ul>\s*<li>([^</li>]+)</li>\s+<li>\s+<a\s+href=""([^""]+)"">(.+?)</a>")

正侧又要怎么写!
function xml_mynews(str,pd)
又要怎么写
回复
dgboby 2008-11-26


response.charset="gb2312"
dim str,pd
str="<div class=cp><ul><li>产品名称 </li> <li> <a href=""http://www.jatxw.cn"">产品图片 </a> </></ul><ul><li>产品名称 </li> <li> <a href=""http://www.jatxw.cn"">产品图片 </a> </></ul><ul><li>产品名称 </li> <li> <a href=""http://www.jatxw.cn"">产品图片 </a> </></ul><ul><li>产品名称 </li> <li> <a href=""http://www.jatxw.cn"">产品图片 </a> </></ul><ul><li>产品名称 </li> <li> <a href=""http://www.jatxw.cn"">产品图片 </a> </></ul><ul><li>产品名称 </li> <li> <a href=""http://www.jatxw.cn"">产品图片 </a> </></ul></div>"
'str 的值你可以用FSO读取出来,这里就不写了
call xml_mynews(str,"<ul>\s*<li>([^</li>]+)</li>\s+<li>\s+<a\s+href=""([^""]+)"">(.+?)</a>")



function xml_mynews(str,pd)
Set objRegExp1 = New Regexp
objRegExp1.IgnoreCase = True
objRegExp1.Global = True
objRegExp1.Pattern =pd
set mm=objRegExp1.Execute(str)
For i= 0 to mm.count -1
sheng_title=objRegExp1.Replace(mm.item(i),"$1")
sheng_url=objRegExp1.Replace(mm.item(i),"$2")
sheng_name=objRegExp1.Replace(mm.item(i),"$3")
'取出值,如要是要保存数据,就写CALL传到另一个FUNCTION 过程
call responsemessage(sheng_title,sheng_url,sheng_name)
'response.write sheng_title

Next

set objRegExp1=nothing
end function

function responsemessage(x,y,z)
'这里写存入数库代码
response.write x&"<br>"

response.write y&"<br>"

response.write z&"<br>"
'输出结果



end function





输出如下

产品名称
http://www.jatxw.cn
产品图片
产品名称
http://www.jatxw.cn
产品图片
产品名称
http://www.jatxw.cn
产品图片
产品名称
http://www.jatxw.cn
产品图片
产品名称
http://www.jatxw.cn
产品图片
产品名称
http://www.jatxw.cn
产品图片
回复
wangkk125 2008-11-26
用split分离出数组
然后操作数组
回复
roadblossom 2008-11-26
帮顶!
回复
wangju309 2008-11-26
这个不就是xml文件的格式么,用jdom很好解析
回复
hndth 2008-11-26
ding
回复
filec75 2008-11-26
ding
回复
Lee2K 2008-11-26
[Quote=引用 10 楼 Mpt_hi 的回复:]
引用 2 楼 dgboby 的回复:
VBScript codedim str,pd
str=" <div class=cp> <ul> <li>产品名称 </li> <li>产品说明 </> <li>aaa </> <li>bbb </> <li>ccc </> </ul> <ul> <li>产品名称 </li> <li>产品说明 </> <li>aaa </> <li>bbb </> <li>ccc </> </ul>"
call xml_mynews(str," <ul>\s* <li>([^ </li>]+) </li>.+?(.|\n)*? </ul>")


function xml_mynews(str,pd)
Set objRegExp1 = New Regexp
objRegExp1.…
[/Quote]
同意.
回复
[Quote=引用 2 楼 dgboby 的回复:]
VBScript codedim str,pd
str="<div class=cp><ul><li>产品名称 </li> <li>产品说明 </><li>aaa </><li>bbb </><li>ccc </></ul><ul><li>产品名称 </li> <li>产品说明 </><li>aaa </><li>bbb </><li>ccc </></ul>"
call xml_mynews(str,"<ul>\s*<li>([^</li>]+)</li>.+?(.|\n)*?</ul>")



function xml_mynews(str,pd)
Set objRegExp1 = New Regexp
objRegExp1.IgnoreCase = True
objRegExp1.Glo…
[/Quote]
支持这个方式,感觉正则用起来很干净
回复
virgo2008 2008-11-26
document.getElementsByTagName
回复
hebhd 2008-11-26
唉.偶是来抢分的.

有时候简单的东西就用最笨的办法去做也不错.


就用 instr 来做也不错.

回复
草原可可 2008-11-26
正则表达式 来取值 方便
回复
fuabc81 2008-11-26
dgboby 你好!是否能将你给我的办法精细点!
我是要取 产品名称 产品说明 aaa === 的数据存入数据库 我不不懂什么正侧了!!!所以不会分析并应用!
就我前面请教过一些正侧式!在循环读取并存入数据库时!还有在生成网页时都出现不能急时保存和生成!出现只能保存几条!其他的都断开了!


我是这样想的!

<div class-"cp">

<ul>
<li>产品名称 </li>
<li><a href="text">产品图片 </a></>
</ul>

<ul>
<li>产品名称 </li>
<li><a href="text">产品图片</a></>
</ul>

</div>


<%
'读取文本!存入变量 content
'读取content第一个<ul></ul>之间的内容
'处理第一个<ul></ul>间的内容,产品名称,产品图片[这里不要求存图片,只取图片名称就行],同时将url 也存入数据库!
'等上面处理完成!
'NEXT
'全文处理完成
%>

能写出具体方法更好!
回复
使用正则弄!
回复
相关推荐
发帖
ASP
创建于2007-09-28

2.8w+

社区成员

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