这是JM的- @echo off
- :: 反序显示输入,能处理 数字+字母(区分大小写)+符号 格式的混合型输入
- :: 区分大小写
- :: 稍加改造,可以实现密码的枚举?
- :: 不能处理的字符:
- :: 管道符号:|
- :: 重定向符号:<、>
- :: 连接符号:&
- :: 脱字或逃逸符号:%、^
- :: 其他符号:?、*、)、=、;、"
- :: code by jm 2006-9-7 CMD@XP
- cls
- set input=
- set /p input= 请输入一个字符串
- set output=
- if not "%input%"=="" set input=%input%
- :loop
- for %%i in (0 1 2 3 4 5 6 7 8 9 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 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 ` ~ ! @ # $ ^( - + . / \ [ ] { } : ') do (
- (if %input:~-1% equ %%i set output=%output%%%i)&&set input=%input:~0,-1%
- )
- if not "%input%"=="" goto :loop
- echo 反序显示输入,结果是 %output%
复制代码 这是 也不知道哪里弄来的- @echo off
- :star
- set Output=
- set /p Enter=请输入:
- :Start
- if not "%Enter%"=="" (
- set Output=%Output%%Enter:~-1%
- set Enter=%Enter:~0,-1%
- goto :Start)
- echo.
- echo %Output%
- pause >nul&goto :Star
复制代码 还有一个是我无聊写写的- @echo off
- setlocal EnableDelayedExpansion
- set /p input=
- set n=1
- set "num=%input%"
- :begin
- set num1=!num:~-%n%,1!
- if "!num1!"=="" goto out
- set "src=!src!!num1!"
- set /a n=!n!+1
- goto begin
- :out
- echo !src!
- pause
复制代码 写这个有很多种的想法
JM版主写得是用for来查找相同的字符并对其赋值
我写的和第二个一样 只是单纯的对字符进行传输
对于非法字符也通过了
其实我很想知道为什么JM版主要用上这样的写法 和 这种写法有什么好处吗?
我希望能够知道
这里 还希望大家一起讨论下关于倒文输出的其他思路 方便交流 ~谢谢 |