中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [求助]findstr查找以[开头并且]结尾的行
« [1] [2] »
作者:
标题: [求助]findstr查找以[开头并且]结尾的行 上一主题 | 下一主题
joyoustar
初级用户





积分 96
发帖 45
注册 2007-3-20
状态 离线
『楼 主』:  [求助]findstr查找以[开头并且]结尾的行

如题,假设文本文档123.txt中有类似以下字符
yiqiweiaoyunjiayou
[
[my title
]
]end title
[]
[abc]
[12345]
abc[12345]
abc[12345]def
我想查找以[开头,并且以]结尾的行并显示
[]
[abc]
[12345]
代码findstr "^[ ]$"不对,应该如何修改?谢谢!

[ Last edited by joyoustar on 2008-8-2 at 10:44 AM ]

2008-8-1 16:03
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
yishanju
银牌会员

[b]看你妹啊[/b]


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

findstr "[^$]"




有问题请发论坛或者自行搜索,再短消息问我的统统是SB
2008-8-1 16:37
查看资料  发短消息 网志   编辑帖子  回复  引用回复
s11ss
银牌会员





积分 2098
发帖 566
注册 2007-9-11
状态 离线
『第 3 楼』:  


findstr ^[ 123.txt|findstr ]$


2008-8-1 16:49
查看资料  发短消息 网志   编辑帖子  回复  引用回复
FQ
社区乞丐





积分 -61
发帖 37
注册 2008-4-19
状态 离线
『第 4 楼』:  


findstr /r "^\[.*\]$" 123.txt
在FINDSTR命令中[]属于正则表达式的元字符范围,所以必须要用\来进行字符化

2008-8-1 17:13
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
joyoustar
初级用户





积分 96
发帖 45
注册 2007-3-20
状态 离线
『第 5 楼』:  

谢谢楼上。

2008-8-1 17:17
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
s11ss
银牌会员





积分 2098
发帖 566
注册 2007-9-11
状态 离线
『第 6 楼』:  



  Quote:
Originally posted by FQ at 2008-8-1 05:13 PM:
findstr /r "^\[.*\]$" 123.txt
在FINDSTR命令中[]属于正则表达式的元字符范围,所以必须要用\来进行字符化

如果最后一行就是[12345],而不是空行的话,将不会显示[12345]。

2008-8-1 17:19
查看资料  发短消息 网志   编辑帖子  回复  引用回复
joyoustar
初级用户





积分 96
发帖 45
注册 2007-3-20
状态 离线
『第 7 楼』:  

同意楼上

2008-8-1 17:26
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
joyoustar
初级用户





积分 96
发帖 45
注册 2007-3-20
状态 离线
『第 8 楼』:  

为何不能显示最后一行[12345]呢

2008-8-1 17:27
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
FQ
社区乞丐





积分 -61
发帖 37
注册 2008-4-19
状态 离线
『第 9 楼』:  

你不要光说我的代码,你自己也看看你的代码在说吧

aaa[dddd]

2008-8-1 17:28
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
FQ
社区乞丐





积分 -61
发帖 37
注册 2008-4-19
状态 离线
『第 10 楼』:  

只要你最后一行有回车换行符我的代码足够

2008-8-1 17:29
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
joyoustar
初级用户





积分 96
发帖 45
注册 2007-3-20
状态 离线
『第 11 楼』:  



  Quote:
Originally posted by FQ at 2008-8-1 05:29 PM:
只要你最后一行有回车换行符我的代码足够

谢谢,但总感觉哪里再修改那么一点点就完美了!确实有时最后没有换行符。
s11ss兄的代码没错,但能用类似"findstr "^\[ * \]$" 123.txt"的最好不过了。

2008-8-1 17:39
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
s11ss
银牌会员





积分 2098
发帖 566
注册 2007-9-11
状态 离线
『第 12 楼』:  



  Quote:
Originally posted by FQ at 2008-8-1 05:28 PM:
你不要光说我的代码,你自己也看看你的代码在说吧

aaa[dddd]

这行本来就不应当显示,不是以[打头的嘛~~~~

2008-8-1 19:59
查看资料  发短消息 网志   编辑帖子  回复  引用回复
FQ
社区乞丐





积分 -61
发帖 37
注册 2008-4-19
状态 离线
『第 13 楼』:  

唉,关键的关键是他显示了啊

2008-8-2 08:29
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
joyoustar
初级用户





积分 96
发帖 45
注册 2007-3-20
状态 离线
『第 14 楼』:  



  Quote:
Originally posted by s11ss at 2008-8-1 04:49 PM:

findstr ^[ 123.txt|findstr ]$

确实有些不对,我开始还没注意到这点,如果[前面有字符的话还是显示了,与要求不符。

2008-8-2 10:43
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
quya
高级用户

五星老土


积分 558
发帖 172
注册 2003-2-9
来自 江苏
状态 离线
『第 15 楼』:  



  Quote:
Originally posted by joyoustar at 2008-8-1 05:39 PM:

谢谢,但总感觉哪里再修改那么一点点就完美了!确实有时最后没有换行符。
s11ss兄的代码没错,但能用类似"findstr "^\[ * \]$" 123.txt"的最好不过了。

没有回车行, 就强行加一个, 我有时就这样做的。

在处理 123.txt 之前,不管它最后一行有没有回车符。先执行以下代码:

echo. >>123.txt



我怎么找不到一个比我注册日期早的人? 难道我是传说中的超级管理员? 其实我只是个潜水冠军而已.
2008-8-2 10:48
查看资料  发短消息 网志   编辑帖子  回复  引用回复
« [1] [2] »
请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


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



论坛跳转: