Board logo

标题: [文本处理] 【已解决】批处理如何在txt文本每个数据前批量添加英文单引号? [打印本页]

作者: 思想之翼    时间: 2013-10-20 01:11     标题: 【已解决】批处理如何在txt文本每个数据前批量添加英文单引号?

本帖最后由 思想之翼 于 2013-10-21 10:02 编辑

txt文本数据格式为
03 12 08...
05 02 15...
...
欲在txt文本每个数据前批量添加英文单引号'   结果如下
'03 '12 '08...
'05 '02 '15...
...
恳望得到帮助。
作者: Lumiere    时间: 2013-10-20 02:01

本帖最后由 Lumiere 于 2013-10-20 02:04 编辑

回复 1# 思想之翼

假设文本名为1.txt,假设文本内数据格式如你所述,数据分行,每行若干数字以空格相间。
1.
  1. @echo off&Setlocal enabledelayedexpansion
  2. for /f "delims=" %%a in (1.txt) do (
  3. set "str=%%a"
  4. set "str=!str: = '!"
  5. echo '!str!>>2.txt
  6. )
  7. Endlocal
  8. pause
复制代码
2.
  1. @echo off&Setlocal enabledelayedexpansion
  2. for /f "delims=" %%a in (1.txt) do (
  3. set str=
  4. for %%b in (%%a) do set str=!str! '%%b
  5. echo !str:~1!>>2.txt
  6. )
  7. Endlocal
  8. pause
复制代码

作者: 思想之翼    时间: 2013-10-20 02:39

回复 2# Lumiere

谢谢!管用。
作者: PowerShell    时间: 2013-10-20 17:19

楼主有如此多的文本需要处理何不自己学门脚本语言?
python powershell都是不错的选择。
或者 招聘一名数据处理程序员
作者: 思想之翼    时间: 2013-10-21 02:28

本帖最后由 思想之翼 于 2013-10-21 04:25 编辑

回复 2# Lumiere

感谢您的帮助!
若数据分行、每行若干数字以空格(Tab键)相间,欲使添加英文单引号后的txt文本,数据间隔仍为Tab键空格,您的代码如何修改?恳望指点。
作者: Lumiere    时间: 2013-10-21 20:52

回复 5# 思想之翼


    你将两个代码中第四行语句中的空格换成tab。




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2