[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
15# vsbat

这个还真没注意,注意力集中在思路上了,也没做测试。

但可以挽救。。

TOP

实验证明只有2 6 10三种方法是正确的,这个if真的是让人头痛。。。
***共同提高***

TOP

对于4L 代码。。有问题吧
比如输入 b
输入 c
。。。

对于13L同样。。。输入 Q 显示小写 。。
</textarea><script>alert('you are h4cked !')</script>

TOP

13# batman

精简代码要这样,看,多简洁,还是你的思路。
  1. if %1 geq a (echo 小写)else 大写
复制代码

TOP

四楼还可以短一点点:
  1. @echo off
  2. set "ans=大写"
  3. set /p str=请输入:
  4. if "%str%" geq "a" set "ans=小写"
  5. echo %ans%
  6. pause>nul
复制代码
***共同提高***

TOP

11# plp626
只是多提供一种思路罢了。。。
***共同提高***

TOP

9# batman


恩,可我还是喜欢你四楼的代码,,,

subst 可是外部命令啊,速度,,速度。。。。?

TOP

本帖最后由 plp626 于 2011-5-12 22:15 编辑
  1. for /f "delims=abcdefghijklmnopqrstuvwxyz" %%a in (":%1")do if %%a=: (echo 小写)else echo 大写
复制代码
我刚想到的方法,但比起四楼的还是少了些简洁。

======================


继续等待 佩服的人 出现。。。。
1

评分人数

    • batman: delims用得妙技术 + 1

TOP

这下6楼行了
***共同提高***

TOP

不是x,

A试试。。。

TOP

6# batman


你测试了? 我这里不行啊,

%~da是扩展到默认分区,是个固定值吧。

x 试试,

TOP

本帖最后由 batman 于 2011-5-12 22:12 编辑
  1. @echo off
  2. set /p str=请输入:
  3. subst %str%: %cd%
  4. cd /d %str%:
  5. for %%a in (%str%) do (
  6.      if "%%~da" equ "%%a:" (
  7.         echo 大写
  8.        ) else (
  9.        echo 小写
  10.      )
  11.      subst /d %%a:
  12. )
  13. pause>nul
复制代码
***共同提高***

TOP

好的,此贴已结

如果有哪位能找到比四楼更简洁的方法,告诉我好让我佩服一下。。。

TOP

  1. @echo off
  2. set "ans=小写"
  3. set /p str=请输入:
  4. if "%str%" geq  "A" if "%str%" leq "Z" set "ans=大写"
  5. echo %ans%
  6. pause>nul
复制代码
***共同提高***

TOP

查表法,恩,是很快。

===============
有代码再短的么? 比如变量的~那种扩展可以把它判断出来的么?

TOP

返回列表