中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
作者:
标题: 如何截取内容? 上一主题 | 下一主题
oicq63236
初级用户





积分 54
发帖 20
注册 2006-12-13
状态 离线
『楼 主』:  如何截取内容?

这是一个笑话网,我通过脚本自动下载,并想截取下列红色部分的内容到一个文件内,然后调用DOS版飞信向手机发送信息,现在取不出红色的内容.

红色的内容每条都不一样,但是蓝色部分是固定的,即两块蓝色区域中的内容.




<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head >
<meta name="description" content=
"手机短信网:恋爱宝典:人
  会谈恋爱,
  不特殊;
  牛
  会吃青草,
  不特殊;
  猪
  会按电话,
  才特殊;
  还按!
  真是神猪!
  哇噻!还会笑!
  真是酷呆了的猪!"
 />
<title>恋爱宝典</title>
<link href="dx.css" rel="stylesheet" type="text/css" media="screen" />
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<script language="javascript" src="kj/ArClickCount.asp?ID=10001"></script>
</head>
<body >
<form name="form1" method="post" action="ck.aspx?id=10001" id="form1">
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwULLTE2MTc5NTk2NDAPZBYCZg9kFgICAg88KwANAQAPFgYeC18hRGF0YUJvdW5kZx4JUGFnZUNvdW50AgEeC18hSXRlbUNvdW50AgVkFgJmD2QWDAIBD2QWBmYPZBYCZg8VAwI1OQzmlbTom4rkuJPlrrYM5pW06JuK5LiT5a62ZAIBD2QWAmYPFQIFMTAxMDdq5LiA5pelIOS4gOWvueiLjeidh+avjeWtkOWcqOS4gOi1t+WQg+WNiOmkkCAgIA0K44CA44CA5YS/5a2Q6Zeu6IuN6J2H5aaI5aaIOuS4uuS7gOS5iOaIkeS7rOavj+WkqemDveWQg+Wkp2QCAg8PFgIeBFRleHQFAzEwMGRkAgIPZBYGZg9kFgJmDxUDAjY0DOeUn+aXpeefreS/oQznlJ/ml6Xnn63kv6FkAgEPZBYCZg8VAgUxMDA0MHDmlZnmjojlr7nkuIDlkI3mmbrlipvml6nnhp/nmoQ25bKB55S35a2p6L+b6KGM5rWL6aqM44CC5pWZ5o6I6Zeu77ya5L2g55qE55Sf5pel5piv5ZOq5LiA5aSp77yf5bCP5a2p77yaMuaciDIw5pelZAICDw8WAh8DBQIyM2RkAgMPZBYGZg9kFgJmDxUDAjYzDOaBi+eIseWuneWFuAzmgYvniLHlrp3lhbhkAgEPZBYCZg8VAgUxMDExNCPlr7nlprMg5LiN566h6Zi05pm05ZyG57y6IOS5n+S4jeWPmGQCAg8PFgIfAwUCMTJkZAIED2QWBmYPZBYCZg8VAwI2MQzmg4XotqPnn63kv6EM5oOF6Laj55+t5L+hZAIBD2QWAmYPFQIFMTAxODl45ZCM5a2m6IGa6aSQ77yM5Yia5LiK55qE5LiA55uY6bih56uL5Yi76KKr5oqi5YWJ77yM5pyA5ZCO5Ymp5LiL6bih5aS05ZKM6bih5bGB6IKh77yM5LiA5ZCM5a2m56qB5Y+R5aWH5oOz77ya5aSn5a6254yc546wZAICDw8WAh8DBQM1MThkZAIFD2QWBmYPZBYCZg8VAwI2NAznlJ/ml6Xnn63kv6EM55Sf5pel55+t5L+hZAIBD2QWAmYPFQIFMTAwMjVL56WI5oS/5oKo55qE55Sf5pel77yM5Li65oKo5bim5p2l5LiA5Liq5pyA55Gw5Li95pyA6YeR56Kn6L6J54WM55qE5LiA55Sf44CCZAICDw8WAh8DBQE0ZGQCBg8PFgIeB1Zpc2libGVoZGQYAQUJR3JpZFZpZXcxD2dk+e6Jj6LcuYHd40BDIRCE1wgjaTw=" />

<div id="bg">
  <div id="container">

<div  id="Header">
     <div id="toplogo">
     </div>
       
         <div id="topr">
           <div id="topcenter">
               <span class="STYLE2">打造收录短信最新、最全的手机短信网</span>&nbsp;&nbsp;&nbsp;   <a href="#" onClick="this.style.behavior='url(#default#homepage)';this.sethomepage('http://www.52dxx.com');return false;">设为首页</A>
           </div>
           <div id="dht">
              <div id="touleft">
                <div id="nav">
                 <ul>
              <li><a href="index.aspx" title="短信首页" >短信首页</a></li>
                          <li class="navjg"></li>
              <li><a href="jrdx.aspx" title="节日手机短信"

2009-4-28 12:37
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
freeants001
中级用户




积分 330
发帖 244
注册 2006-4-14
来自 湖北
状态 离线
『第 2 楼』:  

也许一条简单的for命令就可以了 ,楼主试试看
for /f "tokens=* eol=<" %%i in (test.htm) do @echo.%%i>dest_text.txt


2009-4-28 22:35
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
jmz573515
银牌会员




积分 1212
发帖 464
注册 2006-12-13
状态 离线
『第 3 楼』:  

vbs的
set fso=createobject("scripting.filesystemobject")
set file=fso.opentextfile("test.htm")
s=file.readall
file.close
Function getImages(Str)
        Set re = New RegExp
        re.global=true
        re.Pattern = "\n\W+"""
        Set Contents = re.Execute(Str)
         For Each Match in Contents
                Images = Images +Match+vbcrlf
         Next
        getImages =Images
End Function
set file=fso.createtextfile("#test.txt")
file.write getimages(s)
file.close
createobject("wscript.shell").run "#test.txt"


2009-4-29 02:50
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
yangfengoo
初级用户




积分 47
发帖 41
注册 2009-4-24
状态 离线
『第 4 楼』:  



  Quote:
Originally posted by freeants001 at 2009-4-28 22:35:
也许一条简单的for命令就可以了 ,楼主试试看
for /f "tokens=* eol=<" %%i in (test.htm) do @echo.%%i>dest_text.txt

思路很好但有点问题,改正如下:
for /f "tokens=1 eol=<" %%i in (test.htm) do @echo.%%i>>dest_text.txt



正在学习中……
2009-5-3 01:10
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
freeants001
中级用户




积分 330
发帖 244
注册 2006-4-14
来自 湖北
状态 离线
『第 5 楼』:  

楼上的发现有点问题,具体是什么问题,你能说说吗?我测试了是没发现问题,除了下面句中的红色部分被提取了外.不过你修改后的好象也没解决这个问题
真是酷呆了的猪!"  />

2009-5-3 01:27
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
sady2009
初级用户





积分 58
发帖 60
注册 2009-2-18
状态 离线
『第 6 楼』:  

sed -n "/description/,/\/>/p" test.htm | sed -e "s/<meta name=\"description\" content=//g" -e "s/\/>//g" >b.txt

2009-5-3 01:53
查看资料  发短消息 网志   编辑帖子  回复  引用回复
yangfengoo
初级用户




积分 47
发帖 41
注册 2009-4-24
状态 离线
『第 7 楼』:  



  Quote:
Originally posted by freeants001 at 2009-5-3 01:27:
楼上的发现有点问题,具体是什么问题,你能说说吗?我测试了是没发现问题,除了下面句中的红色部分被提取了外.不过你修改后的好象也没解决这个问题;)
真是酷呆了的猪!"  />

不会啊]就是多了/>
我测试了没有 />



正在学习中……
2009-5-3 06:37
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
freeants001
中级用户




积分 330
发帖 244
注册 2006-4-14
来自 湖北
状态 离线
『第 8 楼』:  

呵呵,是去掉了/>

2009-5-3 07:08
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
yishanju
银牌会员

[b]看你妹啊[/b]


积分 1488
发帖 1357
注册 2006-5-20
状态 离线
『第 9 楼』:  

还是用正则来得更可靠一点




有问题请发论坛或者自行搜索,再短消息问我的统统是SB
2009-5-3 11:55
查看资料  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: