Board logo

标题: [求助]請問如何針對某個分隔符內字串作處理? [打印本页]

作者: leo1984     时间: 2007-11-5 11:51    标题: [求助]請問如何針對某個分隔符內字串作處理?

我有一個文本內容是這樣的
∥bc915∥∥[文書處理]∥Ediary 2.53[免安裝版]∥59.117.162.144∥2007/08/23/ 01:10:07∥2007/08/23/ 01:10:07∥698∥4∥2007/10/12 13:13∥∥∥∥TATATA∥


紅色的部份是我要刪除的部份
而空格的部份我要替換成"中國萬歲"
而我需要只針對那個分隔符內的字串作修改,其他的不要去修改到

可是我寫到這裡就不知道該怎麼寫了

  Quote:
@echo off
for /f "delims=" %%f in ('dir /on/b "1.txt"') do (
  for /f "tokens=1,2,3,4,5,6,7,8,9,10,11,12,13,14,15 delims=∥" %%i in (%%f) do echo %%i∥∥%%j∥%%k∥%%l∥%%m∥%%n∥%%o∥%%p∥∥∥∥%%q∥>>2.txt
)
pause

麻煩老大哥們幫我寫個範例
我會依我的需要去改的
十分感謝><"

[ Last edited by leo1984 on 2007-11-5 at 11:53 AM ]
作者: junchen2     时间: 2007-11-5 12:42
sed -e "s/ /中国/g;s:/::7;s:/::7;s/://5" 1.txt
作者: terse     时间: 2007-11-5 12:43
是这个意思?
@echo off
setlocal enabledelayedexpansion
for /f "delims=" %%f in ('dir /on/b "1.txt"') do (
  for /f "tokens=1,2,3,4,5,6,7,8,9,10,11,12,13,14,15 delims=∥" %%i in (%%f) do (
set "q=%%q"
set q=!q::=!
set q=!q:/=!
echo %%i∥中國萬歲∥%%j∥%%k∥%%l∥%%m∥%%n∥%%o∥%%p∥中國萬歲∥中國萬歲∥中國萬歲∥!q!∥>>2.txt
)
)
pause
还是这个呢?
@echo off
setlocal enabledelayedexpansion
for /f "delims=" %%f in ('dir /on/b "1.txt"') do (
  for /f "tokens=1,2,3,4,5,6,7,8,9,10,11,12,13,14,15 delims=∥" %%i in (%%f) do (
set "q=%%q"
set q=!q::=!
set q=!q:/=!
set q=!q: =中國萬歲!
echo %%i∥ ∥%%j∥%%k∥%%l∥%%m∥%%n∥%%o∥%%p∥ ∥ ∥ ∥!q!∥>>2.txt
)
)
pause
[ Last edited by terse on 2007-11-5 at 12:47 PM ]
作者: leo1984     时间: 2007-11-5 18:16
非常感謝大哥們幫忙
但我是要針對%%p內的字串作修改,其他的都不會修改到
但剛才試了,好像都沒有修改到耶@@?
請問是什麼原因呢?
作者: abcd     时间: 2007-11-5 18:44
sed "/∥/ s# #中國萬歲#4;s#/##7;s###7;s#:##5" 1.txt>2.txt

能用sed,干嘛不用呢??

[ Last edited by abcd on 2007-11-5 at 08:54 PM ]
作者: terse     时间: 2007-11-5 19:44

@echo off
setlocal enabledelayedexpansion
for /f "delims=" %%f in ('dir /on/b "1.txt"') do (
  for /f "tokens=1,2,3,4,5,6,7,8,9,10,11,12,13,14,15 delims=∥" %%i in (%%f) do (
set "q=%%q"
set q=!q::=!
set q=!q:/=!
set q=!q: =中國萬歲!
echo %%i∥ ∥%%j∥%%k∥%%l∥%%m∥%%n∥%%o∥%%p∥ ∥ ∥ ∥!q!∥>>2.txt
)
)
pause
1.txt:
∥bc915∥∥[文書處理]∥Ediary 2.53[免安裝版]∥59.117.162.144∥2007/08/23/ 01:10:07∥2007/08/23/ 01:10:07∥698∥4∥2007/10/12 13:13∥∥∥∥TATATA∥
2.txt:
bc915∥ ∥[文書處理]∥Ediary 2.53[免安裝版]∥59.117.162.144∥2007/08/23/ 01:10:07∥2007/08/23/ 01:10:07∥698∥4∥ ∥ ∥ ∥20071012中國萬歲1313∥
[ Last edited by terse on 2007-11-5 at 07:46 PM ]
作者: leo1984     时间: 2007-11-5 21:33
非常感謝terse大哥的指導^^
一日為師終身為父@@

給abcd大哥,不是我不用@@
是因為我想要"看的懂" "學得會"
dos指令我目前懂得看也剛開始學寫
一樣一樣開始學習
sed使用上是可以成功的,但我還沒學到這一塊^^
十分感謝您指導,體諒初學者