无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 2648|回复: 3
打印 上一主题 下一主题

匹配每行倒数3位并替换如何写?

[复制链接]
跳转到指定楼层
1#
发表于 2011-5-3 15:36:45 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
文本内容如:

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

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


行的长度都不同,而前面也有','所以不能用普通方法替换
2#
发表于 2011-5-4 09:49:42 | 只看该作者
如果每行文本格式固定的话(只有两个','),可以这样:
@for /f "delims=, tokens=1,2" %%i in (file.txt) do echo %%i,%%j)' >>out.txt

不然就要麻烦一些了
回复

使用道具 举报

3#
发表于 2011-5-4 10:52:07 | 只看该作者
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 编辑 ]
回复

使用道具 举报

4#
 楼主| 发表于 2011-5-4 14:45:36 | 只看该作者
如果每行文本格式固定的话(只有两个','),可以这样:
@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位我试试。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-11-17 00:26

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表