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

[文本处理] 批处理怎样在所有段落的开头前加上四个字符的空格?

各位老大,
小弟想求一个代码
实现在文本文件里 所有段落的开头自动前加上指定字符数(比如说4个)的空格。
即实现手动缩进的功能。

最好是支持文件拖拽,比如把一个全文段落都没有缩进的文本A.TXT 拖到 制作好的ChangeVision.bat图标上,
然后同样的目录下输出一个完成缩进功能的A_Change.TXT文件。

劳烦各位了~在此先谢过!!!

非常感谢
【hanyeguxing】的代码、和提醒,基本上是我要的的效果。
不过,又带来了个新的问题。原本特意空出来的空行,似乎都被删除了哦。能否保留原本的空行呢?

应【Batcher】的要求现贴出原始数据
原本的文本格式如下:
(原本它是有每一段空一行的,我拷贝进来的时候,所有的空行都消除了,现在看到的效果是我手动加上去的)

无线网络以其“无所不在”的魅力正成为人们追逐的焦点。无论是网络升级还是重新组网,人们总希望自己的网络能够摆脱线缆的束缚,走进自由的天地。在WLAN的暑期促销中,选购无线产品的用户也与日俱增。但与有线产品相比,无线产品还是新事物,并不是所有的消费者都能很好地把握选购要点。这里,我们收集了六个带有普遍性的疑问进行解答,希望对大家的选购有所帮助。
是802.11g还是802.11b?

就目前而言,人们实现无线上网有三种途径,分别是WLAN无线上网和CDMA、GPRS上网。对家庭用户来讲,不论是速度还是资费,WLAN无线上网都是体验无线自由的绝佳方案。如今市面上能够组建WLAN网络的产品按照速率的不同,可以分为11M、54M、22M、108M等,其中以前两者产品最为多见。那么对于家庭用户,这两种标准的产品哪一个更适合呢?

要回答这个问题并不是很容易,因为虽然802.11g产品可以看成是802.11b产品的升级,但在兼容性、稳定性以及覆盖面、价格上的优势并不明显。首先,802.11b产品11M的传输速度高于DSL、LAN等家庭常见宽带类型的接入速度,完全可以满足家庭用户无线宽带共享上网的需求。其次,802.11b产品在价格上容易接受,从目前的价格来看,同品牌的802.11g产品往往是802.11b产品价格的2~3倍,但近期也有少数厂商刚刚将价格降低到用户可以接受的水平。还有经过市场考验的802.11b产品较多,选择余地大,所以更适合家庭用户选用。

802.11g是未来发展的主流,不过这里需要提醒大家的是,802.11g产品与802.11b产品混用时,吞吐量只能达到14.4M左右,所以802.11g产品比较适合新网络的组建。
需要另行购置无线防火墙吗?

网络安全是个永恒的话题,只是在无线网络中显得尤为沉重。至于802.11x有什么样的安全漏洞这里不再赘述。我们想解答的问题是:组建无线网络需要另行购置无线防火墙吗?

在无线领域里,专心致力于防火墙功能的产品并不多,即使有,在价格上家庭用户也无法承受。换句话说,无线防火墙总是和其他产品捆绑在一起,作为其他产品的一种附加功能出现,其中最为多见的就是无线宽带路由器。

[ 本帖最后由 huzi525 于 2010-5-15 14:20 编辑 ]

段落的标志是什么?一行即为一段?
以一行为一段,新生成的文件名在原文件名后加了_,并位于原目录下:
  1. @echo off&cd/d "%~dp0">nul&echo.正在处理......
  2. (for /f "usebackq delims=" %%a in ("%~1") do echo.  %%a)>"%~dpn1_%~x1"
复制代码
ps:使用“ ”表示一个汉字,不要使用2个空格来表示一个汉字,特别是此txt被应用于网页文件时

[ 本帖最后由 hanyeguxing 于 2010-5-15 10:49 编辑 ]
寒夜孤星:在没有说明的情况下,本人所有代码均运行在 XP SP3 下 (有问题请发贴,QQ临时会话已关闭)

TOP

最还能把原始数据格式贴到顶楼看看
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

要求ANSI编码:
  1. @echo off&cd/d "%~dp0">nul&echo.正在处理......
  2. (for /f "tokens=1* delims=:" %%a in ('findstr /n .* "%~1"') do (
  3. Setlocal enabledelayedexpansion
  4. set b=%%b
  5. if not "!b!"=="" set "b=  !b!"
  6. echo.!b!
  7. endlocal))>"%~dpn1_%~x1"
复制代码
如果没有敏感字符,则可以:
  1. @echo off&cd/d "%~dp0">nul&echo.正在处理......
  2. (for /f "tokens=1* delims=:" %%a in ('findstr /n .* "%~1"') do if "%%b"=="" (echo.) else echo.  %%b)>"%~dpn1_%~x1"
复制代码

[ 本帖最后由 hanyeguxing 于 2010-5-15 15:31 编辑 ]
寒夜孤星:在没有说明的情况下,本人所有代码均运行在 XP SP3 下 (有问题请发贴,QQ临时会话已关闭)

TOP

  1. sed -i "1s/^/    /;/^$/N;s/\n/\n    /" a.txt
复制代码

TOP

  网上搜索“文本整理器”,5年前的一款软件,至今仍为经典,基本上你所能想到的整理效果都考虑到了,并且整理的速度飞快,处理大文件时效果尤为明显,唯一让我觉得难以忍受的是竟然不支持把文件拖曳过去处理,非得一层一层点开,不过看在其他功能十分优秀的份上,这个小缺憾也是可以忽略的。
尺有所短寸有所长,学好批处理没商量;
考虑问题复杂化,解决问题简洁化。

心在天山,身老沧州。

TOP

为什么不用word呢?
努力学习,努力挣分

TOP

word里的正则表达式不是普通用户能玩转的
还是用现成的工具更方便一些。
尺有所短寸有所长,学好批处理没商量;
考虑问题复杂化,解决问题简洁化。

心在天山,身老沧州。

TOP

以前我对word用的少,不熟悉,前段时间有个人喊我帮他考计算机等级证书,我拿针对WORD的试题看了几遍,动手做做,发现功能非常强大,非常的多。
努力学习,努力挣分

TOP

返回列表