楼 主
[求助]一個高級的問題,文本字串的替換
发表于 2007-10-31 13:00 · 中国 台湾 中华电信(HiNet)数据中心
初级用户
★
积分 96 发帖 43 注册 2007-10-31 01:20 18年会员 UID 101245 性别 男
状态 离线
它這論壇是cgi程序,因此論壇的資論都是文本的
結果在改文本出了一些問題
最後這個文本處理好網站就能恢復運行了
請幫幫忙十分感謝大恩大德><
文本以
∥ 這個作為分隔符
我想將
全部文本 找到
第一個字串∥ 分隔符
之間的內容 和
第二個∥ 分隔符
之間的內容互換
處理前:
1 ∥威力導演六 實作 網路教學 ∥我是誰∥123@yahoo.com.tw ∥
處理後:
威力導演六 實作 網路教學 ∥1 ∥我是誰∥123@yahoo.com.tw ∥
簡單說就是把
1 和
威力導演六 實作 網路教學 兩個字串互換就可以了
請幫忙,十分十分再十分感謝,很急><
磕頭感謝
[
Last edited by leo1984 on 2007-10-31 at 01:14 PM ]
第 2 楼
发表于 2007-10-31 13:26 · 中国 浙江 衢州 中移铁通
银牌会员
★★★
积分 1,436 发帖 739 注册 2007-10-11 17:44 18年会员 UID 99469 性别 男
状态 离线
sed "s#^\([^∥]*\)∥\([^∥]*\)\(.*\)#\2∥\1\3#" test.txt>>test1.txt
第 3 楼
发表于 2007-10-31 13:31 · 中国 台湾 中华电信(HiNet)数据中心
初级用户
★
积分 96 发帖 43 注册 2007-10-31 01:20 18年会员 UID 101245 性别 男
状态 离线
不好意思大哥
請問sed開頭這是什麼的指令
我是windows xp 用戶,除了bat檔我可以瞭解
您提供的指令是如何去運行它呢?
謝謝
第 4 楼
发表于 2007-10-31 13:32 · 中国 浙江 衢州 中移铁通
银牌会员
★★★
积分 1,436 发帖 739 注册 2007-10-11 17:44 18年会员 UID 99469 性别 男
状态 离线
sed是第三方工具,是unix下的工具,不过有dos版的
可以搜索一下论坛。
第 5 楼
发表于 2007-10-31 13:41 · 中国 台湾 中华电信(HiNet)数据中心
初级用户
★
积分 96 发帖 43 注册 2007-10-31 01:20 18年会员 UID 101245 性别 男
状态 离线
第 6 楼
发表于 2007-10-31 13:45 · 中国 浙江 衢州 中移铁通
银牌会员
★★★
积分 1,436 发帖 739 注册 2007-10-11 17:44 18年会员 UID 99469 性别 男
状态 离线
第 7 楼
发表于 2007-10-31 14:09 · 中国 台湾 中华电信(HiNet)数据中心
初级用户
★
积分 96 发帖 43 注册 2007-10-31 01:20 18年会员 UID 101245 性别 男
状态 离线
有趣啊這工具
相當方便的一些指令
感謝大哥指點^^
第 8 楼
发表于 2007-10-31 14:12 · 中国 台湾 中华电信(HiNet)数据中心
初级用户
★
积分 96 发帖 43 注册 2007-10-31 01:20 18年会员 UID 101245 性别 男
状态 离线
忘了問大哥
我的文本有很多要處理
您給的指令只能單一處理一個檔案
如何把整個目錄文本處理後輸出呢?
謝謝
第 9 楼
发表于 2007-10-31 14:15 · 中国 浙江 衢州 中移铁通
银牌会员
★★★
积分 1,436 发帖 739 注册 2007-10-11 17:44 18年会员 UID 99469 性别 男
状态 离线
第 10 楼
发表于 2007-10-31 14:19 · 中国 台湾 中华电信(HiNet)数据中心
初级用户
★
积分 96 发帖 43 注册 2007-10-31 01:20 18年会员 UID 101245 性别 男
状态 离线
這樣寫嗎?@@
好像行不通哩
@echo off
md Temp
for /f "delims=" %%f in ('dir /on/b "*.txt"') do (
echo.>Temp\%%~nf.txt
sed "s#^\(*\)∥\(*\)\(.*\)#\2∥\1\3#" %%i in (%%f) do sed %%i∥%%j∥%%k∥%%l∥%%m∥%%n∥%%o∥>>Temp\%%~nf.txt
)
pause
[ Last edited by leo1984 on 2007-10-31 at 02:20 PM ]
第 11 楼
发表于 2007-10-31 14:25 · 中国 浙江 衢州 中移铁通
银牌会员
★★★
积分 1,436 发帖 739 注册 2007-10-11 17:44 18年会员 UID 99469 性别 男
状态 离线
第 12 楼
发表于 2007-10-31 15:07 · 中国 台湾 中华电信(HiNet)数据中心
初级用户
★
积分 96 发帖 43 注册 2007-10-31 01:20 18年会员 UID 101245 性别 男
状态 离线
麻煩大哥
我研究了好半天,寫出來的都不能順利成功
請先指導新手如何寫
幫忙我網站文本能夠先處理,十分感謝><
第 13 楼
发表于 2007-10-31 15:13 · 中国 浙江 衢州 中移铁通
银牌会员
★★★
积分 1,436 发帖 739 注册 2007-10-11 17:44 18年会员 UID 99469 性别 男
状态 离线
@echo off
md Temp
for %%i in (*.txt) do (
echo.>Temp\%%~nxi
sed "s#^\(*\)∥\(*\)\(.*\)#\2∥\1\3#" "%%~nxi">>Temp\%%~nxi
)
在楼主给的基础上,修改的。
没测试过。
pause
第 14 楼
发表于 2007-10-31 16:01 · 中国 广西 玉林 博白县 电信
金牌会员
★★★★
积分 3,687 发帖 1,467 注册 2005-08-08 12:00 20年会员 UID 44210
状态 离线
原先给你那个就可以了,只是
%%i 和
%%j 互换
@echo off
md Temp
for /f "delims=" %%f in ('dir /on/b "*.txt"') do (
echo.>Temp\%%~nfNew.txt
for /f "tokens=1,2,3,4 delims=∥" %%i in (%%f) do echo %%j∥%%i∥%%k∥%%l∥>>Temp\%%~nfNew.txt
)
pause
第 15 楼
发表于 2007-10-31 18:49 · 中国 台湾 中华电信(HiNet)数据中心
初级用户
★
积分 96 发帖 43 注册 2007-10-31 01:20 18年会员 UID 101245 性别 男
状态 离线
樓上的大哥們都非常熱心啊,測試沒問題了
小弟本身也在搞漢化和破解軟件
能和大哥們一起學習真是太好了
網站搞好了會一起跟諸位大大們交流學習^^
论坛跳转:
— 请选择 —
站务公告 & 版主讨论
意见反馈 & 网友交流
DOS学习入门 & 精彩文章 (教学室)
DOS疑难解答 & 问题讨论 (解答室)
DOS启动盘 & LOGO技术 (启动盘室)
DOS批处理 & 脚本技术(批处理室)
DOS媒体世界 & 网络技术 (多媒体室)
DOS汉化世界 & 中文系统 (中文化室)
DOS开发编程 & 发展交流 (开发室)
DOS软件下载 & 游戏分享 (下载室)
GRUB4DOS、SYSLINUX及其它启动管理软件讨论专区
其它操作系统综合讨论区
WinPE、PowerShell及其它命令行系统专区
贴图灌水、文学娱乐专区
网络日志(Blog)
论坛回收站
├ 链接失效,待修正