|
boiu
初级用户
 
积分 25
发帖 10
注册 2006-9-12
状态 离线
|
『楼 主』:
[求助]如何生成文本的反序!
使用 LLM 解释/回答一下
如题
比如 “123” 生成 “321”
要求: 自动转换并生成目标文本。路径可以在系统盘符下!
谢谢!
|
|
2006-10-6 10:42 |
|
|
3742668
荣誉版主
      
积分 2013
发帖 718
注册 2006-2-18
状态 离线
|
『第 2 楼』:
使用 LLM 解释/回答一下
@echo off
set str=
set var=
call :sort "123456789"
echo %ret%
call :sort "abcdefg"
echo %ret%
pause
goto :eof
:sort
set "str=%~1"
set "var=%str:~0,1%%var%"
set "ret=%var%"
set "flag=%str:~1%"
if defined flag call :sort "%flag%"
set str= && set var=
goto :eof
由于批处理的特性,它依然无法处理诸如"%之类的部分特殊字符。如果专门为了那几个特殊去写代码处理将会降低极大的效率。所以不建议用批处理来处理高要求的字符工作。
|
|
2006-10-6 11:48 |
|
|
namejm
荣誉版主
       batch fan
积分 5226
发帖 1737
注册 2006-3-10 来自 成都
状态 离线
|
『第 3 楼』:
使用 LLM 解释/回答一下
试试下面的代码:
@echo off
:: 反序列出文本的每行内容
:: 不能处理的字符:
:: 管道符号:|
:: 重定向符号:<、>
:: 连接符号:&
:: 脱字符号:^
:: 其他符号:?、*、)、"
for /f "delims=" %%i in (test.txt) do (
set str=%%i
set var=
call :intercept
)
start test_.txt
goto :eof
:intercept
if not "%str%"=="" (
set var=%str:~0,1%%var%
set str=%str:~1%
goto intercept
) else (
>> test_.txt echo %var%
)
goto :eof
呵呵,发完这个帖子才发现3742668已经抢先一步。defined的用法比较新鲜。
后来发现不用在字符串的结尾设置结束符号,修改之后的代码能处理更多的字符。
Last edited by namejm on 2006-10-8 at 09:57 ]
|

尺有所短,寸有所长,学好CMD没商量。
考虑问题复杂化,解决问题简洁化。 |
|
2006-10-6 11:51 |
|
|
boiu
初级用户
 
积分 25
发帖 10
注册 2006-9-12
状态 离线
|
|
2006-10-6 21:19 |
|
|
wydos
中级用户
  
积分 304
发帖 117
注册 2006-4-4
状态 离线
|
|
2006-10-7 04:01 |
|
|
vkill
金牌会员
     
积分 4103
发帖 1744
注册 2006-1-20 来自 甘肃.临泽
状态 离线
|
|
2006-10-7 07:36 |
|
|
electronixtar
铂金会员
      
积分 7493
发帖 2672
注册 2005-9-2
状态 离线
|
『第 7 楼』:
使用 LLM 解释/回答一下
bat+vbs
@echo off
echo WScript.echo StrReverse(WScript.Arguments(0)) >$tmp.vbs
cscript
del $tmp.vbs
Last edited by electronixtar on 2006-10-8 at 05:34 ]
|

C:\>BLOG http://initiative.yo2.cn/
C:\>hh.exe ntcmds.chm::/ntcmds.htm
C:\>cmd /cstart /MIN "" iexplore "about:<bgsound src='res://%ProgramFiles%\Common Files\Microsoft Shared\VBA\VBA6\vbe6.dll/10/5432'>" |
|
2006-10-8 05:30 |
|
|
amao
中级用户
  
积分 316
发帖 152
注册 2006-6-18
状态 离线
|
『第 8 楼』:
使用 LLM 解释/回答一下
sed "/\n/!G;s/\(.\)\(.*\n\)/&\2\1/;//D;s/.//" test.txt
|
|
2007-2-2 19:07 |
|
|
jmz573515
银牌会员
    
积分 1212
发帖 464
注册 2006-12-13
状态 离线
|
|
2007-2-3 01:53 |
|
|
guxingyibei
初级用户
 
积分 68
发帖 32
注册 2007-4-1
状态 离线
|
『第 10 楼』:
这个也行吧!就是低级点
使用 LLM 解释/回答一下
@echo off&setlocal enabledelayedexpansion
for /l %%c in (9,-1,0) do (
set /a var=1234567890
set/p=!var:~%%c,1!<nul>>1.txt
)
这个是我这个菜鸟写的,上面几位大哥的看的不是太懂!以后多多学习
|
|
2007-5-7 13:27 |
|
|
lxmxn
版主
       
积分 11386
发帖 4938
注册 2006-7-23
状态 离线
|
『第 11 楼』:
用gawk试试
使用 LLM 解释/回答一下
本人的gawk是GNU awk 3.1.5版本的。
echo abcdefg|gawk "BEGIN{FS=\"\"}{for(i=NF;i>0;i--)printf($i)}"
|
|
2007-5-7 17:26 |
|
|
slore
铂金会员
      
积分 5212
发帖 2478
注册 2007-2-8
状态 离线
|
|
2007-5-8 14:10 |
|