[問題] 批量修改txt中的特定內容

看板Python作者 (shopy691708)時間4年前 (2020/10/27 13:09), 4年前編輯推噓1(108)
留言9則, 4人參與, 4年前最新討論串1/1
各位好,小弟最近遇到一個問題,我有一批用在yolo訓練的txt檔,大約兩千個多個 內容是”0 0.xxxxxx 0.xxxxxx 0.xxxxxx 0.xxxxxx” 都是數字,需要把每個文件中第一個字’0’改成’1’或是其他數字,但其他地方不修 改,試了網路上的腳本都行不通,請問有什麼辦法可以做到呢?謝謝各位 這是我試過的程式: https://i.imgur.com/BwF4LGv.jpg
https://i.imgur.com/bIEM8Mu.jpg
-- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 39.10.229.123 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1603775381.A.960.html ※ 編輯: shopy691708 (39.10.229.123 臺灣), 10/27/2020 13:13:01

10/27 13:59, 4年前 , 1F
不用這麼麻煩吧,sed一行不就解決了?
10/27 13:59, 1F

10/27 14:01, 4年前 , 2F
欲替換文字 + 讀取的該行文字字串由索引1取的子字串
10/27 14:01, 2F

10/27 14:02, 4年前 , 3F
sed.exe -ibak 's/^0/1/' *.txt
10/27 14:02, 3F
※ 編輯: shopy691708 (120.107.145.245 臺灣), 10/27/2020 14:13:21

10/27 20:43, 4年前 , 4F
windows版的sed不用給g嗎? 's/^0/1/g'
10/27 20:43, 4F

10/28 00:33, 4年前 , 5F
感謝各位,我再研究看看
10/28 00:33, 5F

10/28 13:43, 4年前 , 6F
To rexyeah: 加g是許可一次性取代該行多個值
10/28 13:43, 6F

10/28 13:43, 4年前 , 7F
由於這個例子只要取代第一個字完,所以不需要用到
10/28 13:43, 7F

10/28 19:04, 4年前 , 8F
但是你已經給^了,所以只有行首的0會被取代,且沒有g不是
10/28 19:04, 8F

10/28 19:04, 4年前 , 9F
只做一次取代?
10/28 19:04, 9F
文章代碼(AID): #1VbwkLbW (Python)
文章代碼(AID): #1VbwkLbW (Python)