亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在Windows批處理文件中替換子字符串

如何在Windows批處理文件中替換子字符串

白豬掌柜的 2019-08-13 14:21:19
如何在Windows批處理文件中替換子字符串誰能告訴我使用批處理文件在Windows ...如何從文件中讀取并替換字符串= bath從包含文件= bath Abath Bbath XYZbathABC用繩子hello使輸出像hello Ahello Bhello XYZhelloABC
查看完整描述

3 回答

?
翻翻過去那場雪

TA貢獻2065條經驗 獲得超14個贊

SET string=bath Abath Bbath XYZbathABC

SET modified=%string:bath=hello%

ECHO %string%

ECHO %modified%

編輯


一開始沒有看到你想要在替換之前從文件中讀取字符串。


好吧,對于批處理文件,您沒有太多處理文件的工具。在這種特殊情況下,您必須讀取一行,執行替換,然后輸出修改后的行,然后......那么呢?如果你需要在所有文件中替換'bath'的所有發生,那么你將不得不使用一個循環:


@ECHO OFF

SETLOCAL DISABLEDELAYEDEXPANSION

FOR /F %%L IN (file.txt) DO (

  SET "line=%%L"

  SETLOCAL ENABLEDELAYEDEXPANSION

  ECHO !line:bath=hello!

  ENDLOCAL

)

ENDLOCAL

您可以向文件添加重定向:


  ECHO !line:bath=hello!>>file2.txt

或者,您可以將重定向應用于批處理文件。它必須是不同的文件。


編輯2


添加了適當的延遲擴展切換,以便正確處理具有批處理腳本語法特殊含義的某些字符,例如!,^et al。


查看完整回答
反對 回復 2019-08-13
  • 3 回答
  • 0 關注
  • 2282 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號