批处理按要求将字符串分段输出的实现代码

一、要求用批处理随机输出200个字符到1.txt中的一行,内容类同如下:
 
代码:
xh45q3ma+remgofm54sevhrna4g5r8pl9cjardezqjwj3m8itamh0a4itzd6jz8cmrfmibmhr0wmccyb8qnp2qh4rvlwff6yr2ez4eo063u6viy7ppw+nzxaxe8vrm190eei_0dwx5e2kxbds-ae6e96c9_i9glw8mz+uf6uienx9od8bktfnjlwlqu-e1rcj33_+4bz
二、要求用批处理将1.txt中的内容按10个字符为一段输出如下面两种形式:
在一行内输出:
 
代码:
xh45q3ma+r emgofm54se vhrna4g5r8 pl9cjardez qjwj3m8ita mh0a4itzd6 jz8cmrfmib mhr
0wmccyb 8qnp2qh4rv lwff6yr2ez 4eo063u6vi y7ppw+nzxa xe8vrm190e ei_0dwx5e2 kxbds-
ae6e 96c9_i9glw 8mz+uf6uie nx9od8bktf njlwlqu-e1 rcj33_+4bz
分行输出:
 
代码:
xh45q3ma+r
emgofm54se
vhrna4g5r8
pl9cjardez
qjwj3m8ita
mh0a4itzd6
jz8cmrfmib
mhr0wmccyb
8qnp2qh4rv
lwff6yr2ez
4eo063u6vi
y7ppw+nzxa
xe8vrm190e
ei_0dwx5e2
kxbds-ae6e
96c9_i9glw
8mz+uf6uie
nx9od8bktf
njlwlqu-e1
rcj33_+4bz
----------------------------------------------------------------------------------------------------------------------------------------------------
要求:代码高效、通用、简洁、不产生临时文件
ps:请老手们将本题留给新手完成

more:


代码如下:

@echo off
Setlocal Enabledelayedexpansion
set "str=abcdefghijklmnopqrstuvwxyz1234567890+-_"
for /l %%a in (1 1 200) do (
set /a "m=!random!%%39"
call set "var1=%%var1%%%%str:~!m!,1%%"
)
set "var=%var1%"
for /l %%a in (1 1 20) do (
set "var2=!var:~,10!"
set /p =!var2! <NUL
set "var=!var:~10!"
)
echo.&echo.&set "var=%var1%"
for /l %%a in (1 1 20) do (
set "var2=!var:~,10!"
echo.!var2!
set "var=!var:~10!"
)
pause>nul

 

shqf:


代码如下:

@echo off
set /p str=<1.txt
set /p select=1.一行内分节显示 2.分行显示(请选择1-2):
if %select% equ 2 goto fh

:fj
set /p=%str:~,10% <nul
if not "%str:~10%"=="" (set str=%str:~10%&goto fj)
pause>nul&goto end

:fh
echo %str:~,10%
if not "%str:~10%"=="" (set str=%str:~10%&goto fh)
pause>nul

 

terse:


代码如下:

@echo off&Setlocal Enabledelayedexpansion
set "var=abcdefghijklmnopqrstuvwxyz1234567890+-_"
for /l %%i in (1 1 200) do set /a "m=!random!%%39"&call set str=!str!%%var:~!m!,1%%
>1.txt echo %str%
for /l %%i in (1 1 20) do set /p=!str:~,10! <nul&set "%%i=!str:~,10!"&set "str=!str:~10!"
echo.
for /l %%i in (1 1 20) do echo.!%%i!
pause>nul

 

pusofalse:


代码如下:

@echo off&setlocal enabledelayedexpansion
set var=abcdefghijklmnopqrstuvwxyz0123456789+-_
for /l %%a in (1 1 200) do (
set/a n=!random!%%39
call,set a=!a!%%var:~!n!,1%%
)
echo %a%&pause>nul&echo.
:lp
for /l %%i in (0 10 190) do if not defined b (set/p=!a:~%%i,10! <nul) else echo !a:~%%i,10!
if not defined b set b=b&pause>nul&echo.&echo.&goto lp
pause

 

inittab:


代码如下:

@echo off&setlocal enabledelayedexpansion
set "str=1234567890abcdefghijklmnopqrstuvwxyz@#$_+-"
for /l %%i in (0,1,199) do (
set/a ran=!random!%%42&call set "st=!st!%%str:~!ran!,1%%"
)
echo 整行输出: !st!&echo.&echo 分列输出:
for /l %%j in (0,10,190) do (
set /a m=%%j
call set "st1=!st1!%%st:~!m!,10%% "
call echo %%st:~!m!,10%%
)
echo.&echo 分段输出: !st1!
pause

 

netbenton:


代码如下:

@echo off&setlocal enabledelayedexpansion
set "str=1234567890abcdefghijklmnopqrstuvwxyz@#$_+-"
for /l %%i in (0,1,199) do set/a ran=!random!%%42&for %%a in (!ran!) do set "st=!st!!str:~%%a,1!"
echo 整行输出: !st!&echo.&echo 分列输出:
for /l %%j in (0,10,190) do echo !st:~%%j,10!&set "st1=!st1!!st:~%%j,10! "
echo.&echo 分段输出: !st1!
pause

 

bathman:


代码如下:

@echo off
rem 随机生成200个字符
set "var=abcdefghijklnmopqrstuvwxyz0123456789+_/-"
:begin
set /a a=%random%%%40,n+=1
call,set "str=%str%%%var:~%a%,1%%"
if %n% neq 200 goto begin
rem 在一行内分段输出
:lp
set /a m+=1
set /p=%str:~,10% <nul&set "_%m%=%str:~,10%"
set "str=%str:~10%"
if defined str goto lp
rem 分行输出分段后字符
echo.&echo.&for /l %%i in (1,1,%m%) do call,echo %%_%%i%%
pause>nul

(0)

相关推荐

  • 批处理按要求将字符串分段输出的实现代码

    一.要求用批处理随机输出200个字符到1.txt中的一行,内容类同如下: 代码: xh45q3ma+remgofm54sevhrna4g5r8pl9cjardezqjwj3m8itamh0a4itzd6jz8cmrfmibmhr0wmccyb8qnp2qh4rvlwff6yr2ez4eo063u6viy7ppw+nzxaxe8vrm190eei_0dwx5e2kxbds-ae6e96c9_i9glw8mz+uf6uienx9od8bktfnjlwlqu-e1rcj33_+4bz 二.要求用批处理

  • 再谈DOS批处理下格式化日期字符串的多种方法(详解)

    在Linux下,简单的一句话:date '+%Y%m%d-%H%M%S'就可以得到你要的输出:20120331-064219 可是在windows下,要想得到这个,还是需要费点功夫的. 1. 直接用字符串格式化输出 比如,如果你的机器上时间的输出是这样子的: c:\>echo %date%-%time% 2012-03-31 星期六- 6:44:02.50 那么,要想得到输出20120331- 64402,可以这样截取字符串: c:\>echo %date:~0,4%%date:~5,2%%d

  • 再谈DOS批处理下格式化日期字符串的三种方法(详解)

    谈到日期字符串的输出,真是让人烦. 在Linux下,简单的一句话:date '+%Y%m%d-%H%M%S'就可以得到你要的输出:20120331-064219 可是在windows下,要想得到这个,还是需要费点功夫的. 1. 直接用字符串格式化输出 比如,如果你的机器上时间的输出是这样子的: c:\>echo %date%-%time% 2012-03-31 星期六- 6:44:02.50 那么,要想得到输出20120331- 64402,可以这样截取字符串: c:\>echo %date:

  • php实现字符串反转输出的方法

    本文实例讲述了php实现字符串反转输出的方法.分享给大家供大家参考.具体分析如下: php中带有一个很简单的函数用于字符串反转,即strrev() <?php print strrev('This is not a palindrome.'); ?> 输出结果如下 .emordnilap a ton si sihT 希望本文所述对大家的php程序设计有所帮助.

  • 浅谈Python 字符串格式化输出(format/printf)

    Python 字符串格式化使用 "字符 %格式1 %格式2 字符"%(变量1,变量2),%格式表示接受变量的类型.简单的使用例子如下: # 例:字符串格式化 Name = '17jo'   print 'www.%s.com'%Name   >> www.17jo.com Name = '17jo' Zone = 'com' print 'www.%s.%s'%(Name,Zone) >> www.17jo.com 字符串格式化时百分号后面有不同的格式符号,代表

  • Python字符串格式化输出方法分析

    本文实例分析了Python字符串格式化输出方法.分享给大家供大家参考,具体如下: 我们格式化构建字符串可以有3种方法: 1 元组占位符 m = 'python' astr = 'i love %s' % m print astr 2 字符串的format方法 m = 'python' astr = "i love {python}".format(python=m) print astr 3 字典格式化字符串 m = 'python' astr = "i love %(pyt

  • Python实现字符串格式化输出的方法详解

    本文实例讲述了Python实现字符串格式化输出的方法.分享给大家供大家参考,具体如下: python属于强类型的语言,如果像java一样操作字符串和数字的"+"时,会出现TypeError.而python的格式化方法有多种,比如使用占位符,使用format,或者是自定义模版等等.这里介绍了其中的几种方法 下面这个例子很好的说明了python属于强类型语言: print "abc" + 123 Traceback (most recent call last): Fi

  • Java实现字符串倒序输出的常用方法小结

    本文实例汇总了Java实现字符串倒序输出的常用方法,分享给大家供大家参考.具体方法如下: 1. 最容易想到的估计就是利用String类的toCharArray(),再倒序输出数组的方法了. 实现代码如下: import javax.swing.JOptionPane; public class ReverseString { public static void main (String args[]){ String originalString; String resultString =

  • python解决字符串倒序输出的问题

    如下所示: #python解决字符串倒序输出 def string_reverse(m): num=len(m) a=[] for i in range(num): a.append(m[num-1-i])#从最后一位的元素开始往新list内添加元素 return a 以上这篇python解决字符串倒序输出的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.

  • Python字符串格式化输出代码实例

    这篇文章主要介绍了Python字符串格式化输出代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 使用占位符%s name = '小飞' print('姓名是: %s' % name) format()函数 格式:"{} {}".format(value,value) 示例: name = 'Tom' age = 7 hobby = '玩滑滑梯!' money = 8.5 message= '{}今年{}岁,最喜欢{},有零花钱:

随机推荐