标题: [文本处理] [已解決]批处理如何让文本依照字数多寡排列? [打印本页]
作者: strong12345 时间: 2011-8-12 18:45 标题: [已解決]批处理如何让文本依照字数多寡排列?
本帖最后由 strong12345 于 2011-8-17 12:28 编辑
复制代码
想让他排列成复制代码
请问怎么做最有效率?
(字元包含中文,英文,数字,等各种符号)
gawk有办法字算每行字元长度吗?
作者: Batcher 时间: 2011-8-12 22:06
参考:http://bbs.bathome.net/thread-9214-1-1.html
作者: 545810831 时间: 2011-8-13 13:57
我来试下
@echo off
setlocal enabledelayedexpansion
::假如每行字符不超过100
set m=100
:sta
set /a m=!m!-1
for /f "delims=" %%i in (1.txt) do (
set a=%%i
for /l %%a in (0 1 100) do (
if not "!a:~%%a,1!"=="" set b=%%a
)
if !m! equ !b! if not "!a:~%m%,1!"=="" echo !a!
)
if !m! gtr 0 goto sta
pause
作者: Hello123World 时间: 2011-8-13 17:24
本帖最后由 Hello123World 于 2011-8-13 17:28 编辑
复制代码
这句代码请无视,理解错误,/o是计算上行字符串偏移量。
作者: 545810831 时间: 2011-8-13 18:11
- @echo off
- setlocal enabledelayedexpansion
- ::假如每行字符不超过100
- set m=100
- :sta
- set /a m=!m!-1
- for /f "delims=" %%i in (1.txt) do (
- set a=%%i
- for /l %%a in (0 1 100) do (
- if not "!a:~%%a,1!"=="" set b=%%a
- )
- if !m! equ !b! if not "!a:~%m%,1!"=="" echo !a!
- )
- if !m! gtr 0 goto sta
- pause
复制代码
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |