中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
作者:
标题: 难题:如何delims 双引号 上一主题 | 下一主题
uiopuiop
中级用户





积分 400
发帖 211
注册 2007-9-30
状态 离线
『楼 主』:  难题:如何delims 双引号

要用双引号做分隔符,for 循环因该则么写?
要过滤出URL: “http://feeds.penton.com/windowsitpro/wininfo

for /F "tokens=4 delims=“”" %i in (test.txt) do @echo %i


test.txt 包含如下内容:

<link rel="alternate" title="Products" href="http://feeds.penton.com/windowsitpro/wininfo" type="application/rss+xml">
。。。。。。。。

[ Last edited by uiopuiop on 2008-8-29 at 12:10 AM ]

2008-8-27 23:34
查看资料  发短消息 网志   编辑帖子  回复  引用回复
huahua0919
银牌会员




积分 1608
发帖 780
注册 2007-10-7
状态 离线
『第 2 楼』:  

换个角度
@echo off
for /f "tokens=4" %%i in (test.txt) do (
for /f "tokens=2 delims==" %%a in ("%%i") do (echo %%~a)
)
pause

@echo off&&setlocal enabledelayedexpansion
for /f "delims=" %%i in (a.txt) do (
set a=%%i
set a=!a:"='!
)
for /f "tokens=6 delims='" %%i in ("%a%") do (echo %%i)
pause
[ Last edited by huahua0919 on 2008-8-28 at 12:36 AM ]

2008-8-27 23:51
查看资料  发送邮件  访问主页  发短消息 网志   编辑帖子  回复  引用回复
uiopuiop
中级用户





积分 400
发帖 211
注册 2007-9-30
状态 离线
『第 3 楼』:  

难道真的不能直接分隔双引号吗?

我上面只不过举个例子,实际情况可能是多变的。

2008-8-28 20:37
查看资料  发短消息 网志   编辑帖子  回复  引用回复
huahua0919
银牌会员




积分 1608
发帖 780
注册 2007-10-7
状态 离线
『第 4 楼』:  

根据多变的实际情况,进行变通

2008-8-28 20:43
查看资料  发送邮件  访问主页  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 5 楼』:  

难道真的不能直接分隔双引号吗?确实真的不能直接分隔双引号吗!



2008-8-28 21:24
查看资料  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 6 楼』:  


findstr /i "href=" "test.txt"|gawk -F\" "{print $6}"
gawk.exe
http://upload.cn-dos.net/img/548.zip



2008-8-28 21:38
查看资料  发短消息 网志   编辑帖子  回复  引用回复
uiopuiop
中级用户





积分 400
发帖 211
注册 2007-9-30
状态 离线
『第 7 楼』:  

如果要过滤出一个网页的所有超链接因该则么做?

2008-8-28 22:53
查看资料  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 8 楼』:  

能把test.txt的完整内容贴出来看看么?
如果for里面的delims允许用双引号作分隔符,你准备如何“过滤出一个网页的所有超链接”?



2008-8-28 23:13
查看资料  发短消息 网志   编辑帖子  回复  引用回复
uiopuiop
中级用户





积分 400
发帖 211
注册 2007-9-30
状态 离线
『第 9 楼』:  

比如这个页面的代码把,能过滤出所有超链接的清单吗?
另一方面只是想知道是否真的不能delims 双引号。

2008-8-28 23:48
查看资料  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 10 楼』:  

你给出的test.txt只有一个超链接,6楼的代码不行?
确定肯定以及一定不能delims双引号。



2008-8-28 23:53
查看资料  发短消息 网志   编辑帖子  回复  引用回复
uiopuiop
中级用户





积分 400
发帖 211
注册 2007-9-30
状态 离线
『第 11 楼』:  

我说的是一个网页上的所有超链接,比如WWW.SINA.COM 主页上的所有超链接。

2008-8-29 00:08
查看资料  发短消息 网志   编辑帖子  回复  引用回复

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


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



论坛跳转: