中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
« [1] [2] »
作者:
标题: 批处理显示连序字母? 上一主题 | 下一主题
online365
初级用户




积分 182
发帖 75
注册 2006-10-11
状态 离线
『楼 主』:  批处理显示连序字母?

比如我输入 af  就显示
a
b
c
d
e
f

每个字母占一行啊``不知能不能实现..

2007-1-9 17:32
查看资料  发送邮件  发短消息 网志  OICQ (123000365)  编辑帖子  回复  引用回复
qasa
高级用户




积分 959
发帖 311
注册 2006-4-11
来自 广东-LianJiang
状态 离线
『第 2 楼』:  

我看,应该不行的了,除非可以把字符转换成数字来运行,运行后再由数字转换成字母,这和我之前发的ASSCII码和字母数字之间转换贴就是这个道理。

2007-1-9 17:38
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
PPdos
高级用户




积分 783
发帖 268
注册 2006-12-26
状态 离线
『第 3 楼』:  可以实现~~~~ 论坛搜索先~~~~~~



2007-1-9 18:12
查看资料  发短消息 网志   编辑帖子  回复  引用回复
namejm
荣誉版主

batch fan


积分 5226
发帖 1737
注册 2006-3-10
来自 成都
状态 离线
『第 4 楼』:  

  演示代码如下(没有做容错检测):
@echo off
set str=a b c d e f g h i j k l m n o p q r s t u v w x y z
:begin
cls
set flag=0
set var=
set input=
set /p input=      请输入字母范围(如af):
for %%i in (%str%) do call :pickup %%i

:end
pause
goto begin

:pickup
if /i "%1"=="%input:~0,1%" set flag=1
if /i "%1"=="%input:~-1%" set flag=2
if %flag% equ 1 echo %1
if %flag% equ 2 echo %1&goto end
goto :eof


   此帖被 +14 点积分      点击查看详情   
评分人:【 ccwan 分数: +5  时间:2007-1-10 01:08
评分人:【 redtek 分数: +5  时间:2007-1-10 01:13
评分人:【 online365 分数: +2  时间:2007-1-10 07:55
评分人:【 PPdos 分数: +2  时间:2007-1-10 09:11




尺有所短,寸有所长,学好CMD没商量。
考虑问题复杂化,解决问题简洁化。
2007-1-10 00:18
查看资料  发短消息 网志   编辑帖子  回复  引用回复
youxi01
高级用户




积分 846
发帖 247
注册 2006-10-27
来自 湖南==》广东
状态 离线
『第 5 楼』:  

也来玩^_^
@echo off
setlocal enabledelayedexpansion

set str=a b c d e f g h i j k l m n o p q r s t u v w x y z
for %%i in (%str%) do set/a dec+=1 & set %%i=!dec! & set str!dec!=%%i
set en=
set /p en=请输入字母范围(如af):
set/a num1=!%en:~0,1%!,num2=!%en:~-1%!
for /l %%i in (%num1%,1,%num2%) do echo !str%%i!

pause>nul


   此帖被 +16 点积分     点击查看详情   
评分人:【 namejm 分数: +4  时间:2007-1-10 02:29
评分人:【 ccwan 分数: +5  时间:2007-1-10 03:01
评分人:【 redtek 分数: +5  时间:2007-1-10 08:04
评分人:【 PPdos 分数: +2  时间:2007-1-10 09:12


2007-1-10 02:09
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
youxi01
高级用户




积分 846
发帖 247
注册 2006-10-27
来自 湖南==》广东
状态 离线
『第 6 楼』:  

还有一个好理解一点的:
@echo off
setlocal enabledelayedexpansion

set str=a b c d e f g h i j k l m n o p q r s t u v w x y z
set en=
set /p en=请输入字母范围(如af):
set str1=%en:~0,1%
set str2=%en:~-1%
for %%i in (%str%) do if %%i geq !str1! if %%i leq !str2! echo %%i
pause>nul


   此帖被 +11 点积分     点击查看详情   
评分人:【 namejm 分数: +2  时间:2007-1-10 02:29
评分人:【 online365 分数: +2  时间:2007-1-10 07:55
评分人:【 redtek 分数: +5  时间:2007-1-10 08:04
评分人:【 PPdos 分数: +2  时间:2007-1-10 09:12


2007-1-10 02:21
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
online365
初级用户




积分 182
发帖 75
注册 2006-10-11
状态 离线
『第 7 楼』:  

谢谢两位了..  ^_^

2007-1-10 07:55
查看资料  发送邮件  发短消息 网志  OICQ (123000365)  编辑帖子  回复  引用回复
PPdos
高级用户




积分 783
发帖 268
注册 2006-12-26
状态 离线
『第 8 楼』:  我还没玩呢 ^.^#

@echo off
:begin
set /p a="老规矩 嘻嘻 :"
set str=a b c d e f g h i j k l m n o p q r s t u v w x y z
for %%i in (%str%) do echo %%i|findstr [%a:~0,1%-%a:~-1%]
goto:begin

2007-1-10 09:05
查看资料  发短消息 网志   编辑帖子  回复  引用回复
namejm
荣誉版主

batch fan


积分 5226
发帖 1737
注册 2006-3-10
来自 成都
状态 离线
『第 9 楼』:  

  那我再来一段:
@echo off
:begin
cls
set str=a b c d e f g h i j k l m n o p q r s t u v w x y z
set input=
set /p input=      请输入字母范围(如af):
call set str=%%str:%input:~0,1%=-☆%input:~0,1%%%
call set str=%%str:%input:~-1%=%input:~-1%☆%%
for /f "tokens=2 delims=☆" %%i in ("%str%") do set str=%%i
for %%i in (%str%) do echo %%i
pause
goto begin
  再精简一下。

[ Last edited by namejm on 2007-1-9 at 08:35 PM ]



尺有所短,寸有所长,学好CMD没商量。
考虑问题复杂化,解决问题简洁化。
2007-1-10 09:31
查看资料  发短消息 网志   编辑帖子  回复  引用回复
jmz573515
银牌会员




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

揍个热闹
m="a;b;c;d;e;f;g;h;i;j;k;l;m;n;o;p;q;r;s;t;u;v;w;x;y;z"
s=split(m,";")
b=inputbox("请输入字母范围(如af):","系统提示")
l=0
for i=0 to 25
if s(i)=left(b,1) then
l=1
end if
if l=1 then
h=h&vbcrlf&s(i)
end if
if s(i)=right(b,1) then exit for
next
msgbox h


2007-1-10 22:38
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
youxi01
高级用户




积分 846
发帖 247
注册 2006-10-27
来自 湖南==》广东
状态 离线
『第 11 楼』:  



  Quote:
Originally posted by jmz573515 at 2007-1-10 10:38 PM:
揍个热闹
[code]
m="a;b;c;d;e;f;g;h;i;j;k;l;m;n;o;p;q;r;s;t;u;v;w;x;y;z"
s=split(m,";")
b=inputbox("请输入字母范围(如af):","系统提示")
l= ...

如果是vbs的话,就不用这么麻烦拉!用一个简单的for循环就搞定拉

2007-1-11 02:26
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
jmz573515
银牌会员




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

还望11楼的朋友指教,我是刚学VBS也不是很了解。谢谢!

2007-1-11 02:57
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
huzixuan
高级用户




积分 537
发帖 219
注册 2006-10-31
来自 芜湖
状态 离线
『第 13 楼』:  

今天我终于看懂了老大 5 楼的代码.



江湖远
碧空长
路茫茫

    一个人漫无目的的奔跑,风,刺骨的冷....
2007-2-4 08:52
查看资料  发短消息 网志   编辑帖子  回复  引用回复
vkill
金牌会员





积分 4103
发帖 1744
注册 2006-1-20
来自 甘肃.临泽
状态 离线
『第 14 楼』:  

ascii 码不知道可以用的上吗?

2007-2-4 10:41
查看资料  发送邮件  访问主页  发短消息 网志   编辑帖子  回复  引用回复
namejm
荣誉版主

batch fan


积分 5226
发帖 1737
注册 2006-3-10
来自 成都
状态 离线
『第 15 楼』:  

  用来处理ASCII码?



尺有所短,寸有所长,学好CMD没商量。
考虑问题复杂化,解决问题简洁化。
2007-2-4 10:57
查看资料  发短消息 网志   编辑帖子  回复  引用回复
« [1] [2] »
请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


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



论坛跳转: