无忧启动论坛

标题: 匹配每行倒数3位并替换如何写? [打印本页]

作者: yjd    时间: 2011-5-3 15:36
标题: 匹配每行倒数3位并替换如何写?
文本内容如:

123','00008001','
111','00008001','
222222','00008001','

需要达到替换每行倒数3位','');


行的长度都不同,而前面也有','所以不能用普通方法替换

作者: onlyu2000    时间: 2011-5-4 09:49
如果每行文本格式固定的话(只有两个','),可以这样:
@for /f "delims=, tokens=1,2" %%i in (file.txt) do echo %%i,%%j)' >>out.txt

不然就要麻烦一些了
作者: haiou327    时间: 2011-5-4 10:52
test.txt内容
  1. 123','00008001','
  2. 111','00008001','
  3. 222222','00008001','
复制代码
@echo off
setlocal ENABLEDELAYEDEXPANSION
if exist Test.txt cd.>Conver.txt
for
/f "delims=" %%i in (Test.txt) do (
   set
Str=%%i
   set Atr=!str:~0,-3!
   set Btr=!Str:~-2!
   echo !Atr!'^)!btr!>>Conver.txt
                                     )
if exist Conver.txt start Conver.txt


[ 本帖最后由 haiou327 于 2011-5-7 13:54 编辑 ]
作者: yjd    时间: 2011-5-4 14:45
如果每行文本格式固定的话(只有两个','),可以这样:
@for /f "delims=, tokens=1,2" %%i in (file.txt) do echo %%i,%%j)' >>out.txt

不然就要麻烦一些

不是固定。

@echo off
setlocal ENABLEDELAYEDEXPANSION
cd.>Conver.txt
for /f "delims=" %%i in (test.txt) do (
   set Str=%%i
   set Atr=!str:~0,-3!
   set Btr=!Str:~-2!
   echo !Atr!'^)!btr!>>Conver.txt
                                     )
start Conver.txt


多谢2位我试试。




欢迎光临 无忧启动论坛 (http://wuyou.net/) Powered by Discuz! X3.3