找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
楼主: yslyxqysl

[ 新手习题] 批处理去除字符串前所有的0

[复制链接]
发表于 2009-1-19 11:21:35 | 显示全部楼层
感谢rat提出纠正哈!!
发表于 2009-1-19 13:34:23 | 显示全部楼层

回复 14楼 的帖子

右上角有个按钮“新帖”
发表于 2009-2-28 17:19:32 | 显示全部楼层

回复 1楼 的帖子


  1. @echo off
  2. set /p str=
  3. echo. %str%
  4. echo *****************************
  5. if %str:~0,1% neq 0 (echo This is not a numeral ---NaN  & echo bye & goto:eof)
  6. echo orginal str---%str%

  7. :one
  8. if %str:~0,1% equ 0 (set str=%str:~1% )
  9. if %str:~0,1% equ 0 goto one


  10. :end
  11. echo string after delete zero---- %str%
复制代码

[ 本帖最后由 myzwd 于 2009-2-28 17:31 编辑 ]
发表于 2009-3-24 14:15:37 | 显示全部楼层
我来凑一个

  1. @echo off
  2. set /p num=please input number:
  3. :start
  4. set var=%num:~0,1%
  5. if %var% equ 0 (set num=%num:~1% & goto start) else (echo %num% & pause)
复制代码
发表于 2009-3-26 22:09:20 | 显示全部楼层
  1. @echo off
  2. set /p str=请输入字符:
  3. :begin
  4. set a=%str:~0,1%
  5. if  not %a%==0 (goto eof) else ( set %a%==""&&set str=%str:~1%&&goto begin )
  6. :eof
  7. echo %str%
  8. pause
复制代码

[ 本帖最后由 cainiao736 于 2009-3-26 22:33 编辑 ]
发表于 2009-3-28 16:10:43 | 显示全部楼层
  1. @echo off
  2. :input
  3. cls
  4. set /p str=请输入一串字符(纯数字):
  5. echo.%str%|findstr "^[0-9]*$">nul|| (cls& echo 所输入的不是纯数字,请重新输入& pause& goto input)
  6. for /f "delims=0 tokens=1*" %%i in ("10%str%") do set str2=%%j
  7. cls
  8. echo 你输入的字符串为:%str%
  9. echo 去前面所有的零为:%str2%
  10. pause
  11. goto input
复制代码
发表于 2011-1-30 10:37:13 | 显示全部楼层
我菜鸟而且,来瞧瞧
发表于 2011-2-4 21:02:49 | 显示全部楼层
  1. @echo off
  2. setlocal EnableDelayedExpansion
  3. set /p d=用户输入一串字符:
  4. for %%i in (%d%) do (
  5. set a=%%i
  6. set b=!a:~1,5!
  7. set c=!b:~-4!
  8. echo !c!
  9. )
  10. pause
  11. set a=
  12. set b=
  13. set c=
  14. set d=
复制代码
发表于 2011-4-9 17:50:45 | 显示全部楼层
哈哈 各有千秋呀
发表于 2011-4-20 13:04:10 | 显示全部楼层
  1. @echo off
  2. set /p n=请输入字符串:

  3. echo %n%|findstr "^[0-9][0-9]*$">nul
  4. if errorlevel 1 echo 不是纯数字&pause&goto :eof else (
  5. :loop
  6.         if "%n:~0,1%"=="0" (
  7.                 set n=%n:~1%
  8.                 echo %n%
  9.                 goto loop
  10.         ) else goto ex    ::一旦出现第一个不是0的字符则跳出

  11. )
  12. :ex
  13. echo %n%
  14. pause
复制代码
发表于 2014-2-18 22:45:03 | 显示全部楼层
本帖最后由 battab 于 2014-2-18 22:51 编辑

回复 1# yslyxqysl
  1. @echo off
  2. :r
  3. set "input="
  4. set /p input=请输入要入理的数字串:
  5. echo %input%|findstr "^[0-9][0-9]*$">nul||(echo 包含非数字)&&goto r
  6. set str=%input%
  7. :l
  8. if "%str:~0,1%"=="0" (set str=%str:~1%) else (goto end)
  9. goto l

  10. :end
  11. echo %str%
  12. pause>nul
  13. echo 继续请按r,退出请按任意键。
  14. set "enter="
  15. set /p enter=请输入:
  16. if "%enter%"=="r" goto r else exit


复制代码
发表于 2014-3-7 18:04:40 | 显示全部楼层
@echo off
echo 请输入内容
set /p a=

:a
if %a:~0,1% neq 0 goto :b
set a=%a:~1%
goto :a

:b
echo %a%
pause
发表于 2014-11-9 17:21:06 | 显示全部楼层
本帖最后由 shelluserwlb 于 2014-11-9 17:24 编辑
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. :again
  4. set /p n=请输入一段字符(纯数字):
  5. echo %n%|findstr "^[0-9][0-9]*$">nul||goto again
  6. for /l %%i in (0,1,1000) do (
  7.     echo !n:~%%i,1!|findstr "0" >nul||(echo !n:~%%i! & goto :end)
  8. )
  9. :end
  10. pause
复制代码
发表于 2014-11-11 13:25:34 | 显示全部楼层
rat 发表于 2009-1-15 22:54



   
批处理文件当js文件用,学习了……
发表于 2014-12-13 21:02:03 | 显示全部楼层
也发一个吧,没考虑太多
  1. @echo off&setlocal enabledelayedexpansion
  2. set /p sr=请输入数字:
  3. for /l %%a in (0 1 1000) do (set sw=!sr:~%%a,1!&if not "!sw!"=="0" (call :qc %%a))
  4. :qc
  5. set aa=%1
  6. goto ii
  7. :ii
  8. set sc=!sr:~%aa%!
  9. echo %sc%
  10. goto end
  11. :end
  12. pause>nul&exit
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 00:56 , Processed in 0.019928 second(s), 7 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表