後更換數據我有一個包含各種字符串文本文件「info.txt」。 我想找到字符串「‘masterstring’:」第一次出現 並更換後一切「‘masterstring’:」用「替換數據文本」,但只有直到下一個逗號, 是什麼做的最快方法這與一個.bat腳本?字符串,字符串,直到下一個逗號
回答
您可以編寫一個.VBS腳本來執行此操作,但是使用JScript更容易,因爲批處理和JScript代碼可以在具有.BAT擴展名的相同混合文件中組合使用。我複製瞭解決方案this post,並稍微修改了該請求。
@set @a=0 /*
@cscript //nologo //E:JScript "%~F0" <input.txt> output.txt
@goto :EOF */
WScript.Stdout.Write(WScript.StdIn.ReadAll().replace(/masterstring.*,/,"masterstring replacement data text,"));
您還沒有發佈樣本數據,所以我創建了一個簡單的輸入文件:
First line in data file.
First line with masterstring and data to be replaced, preserve text after comma.
Other line with masterstring and other data, that must not be changed.
Last line in file.
這是輸出:
First line in data file.
First line with masterstring replacement data text, preserve text after comma.
Other line with masterstring and other data, that must not be changed.
Last line in file.
有關此方法的進一步詳情,請參閱上面的鏈接以及該帖子中的鏈接。您也可以在本網站中搜索「jscript替換」和「jscript混合」,使用batch-file
標籤。
謝謝。這是正確的道路,但我有一些問題。我如何找到以下內容,並加上引號:「masterstring」:「 – user3552978
您應該使用_code tags_清楚地分隔您的示例。是否」masterstring「:」'或'「masterstring」:'?任何其他?請根據這種輸入發佈一個簡短的輸入示例和所需的輸出;否則這只是一個猜謎遊戲...編輯你的問題(不要在評論中發佈數據)並使用代碼標籤! – Aacini
- 1. Python字符串獲得領先的字符,直到達到第一個逗號
- 2. 串聯一個逗號字符的字符串
- 3. URL查詢字符串在字符串中有一個逗號
- 4. Convert.ToInt32()一個字符串與逗號
- 5. 獨立字符串逗號
- 6. 添加逗號字符串
- 7. 逗號分隔符號字符串
- 8. 將逗號分隔字符串轉換爲多個字符串
- 9. 串聯列值到一個逗號分隔的字符串
- 10. 串聯列值到一個逗號分隔的字符串
- 11. 在Java中,刪除字符串的第一個字符(逗號)(逗號)
- 12. 字符串的最後一個字符前加逗號在C#
- 13. 在一個字符串忽略逗號之間用逗號
- 14. Linq列表到逗號的字符串
- 15. 搜索逗號IDS分隔字符串以逗號分隔字符串
- 16. 子串直到字符串
- 17. RegEx匹配某個字符串,直到下一次出現此字符串
- 18. 從字符串1打印下一個x行,直到字符串2
- 19. 字符串過濾逗號和數字
- 20. JavaScript字符串數組到多個字符串用逗號分隔
- 21. 如何在主字符串中找到多個逗號分隔的字符串
- 22. 在字符串中輸入字符,直到下一個字符爲整數 - C
- 23. 從字符串中選擇,直到下一個字符爲英文字符
- 24. 將字符串的Arraylist轉換爲一個逗號分隔的字符串
- 25. 用逗號連接字符串以加入長字符串
- 26. 將字符串[]轉換爲逗號分隔的字符串。
- 27. 矢量將字符串轉換爲逗號字符串?
- 28. 字符串分割保持逗號字符串
- 29. 如何獲取逗號分隔字符串的子字符串?
- 30. 正則表達式的字符串,直到轉義逗號
我的第一反應是看看perl的。你可以寫一個正則表達式替換某些文本,並且速度很快 – lordkain
到目前爲止你嘗試了什麼?你知道命令'find'或'findstr',還有'for/F'嗎?在命令提示符下鍵入命令後加'/?'以獲取詳細信息... – aschipfl
通常,您可以想出某事。像'\「masterstring \」:([^,] *)'即,匹配「masterstring」和冒號字面上,然後捕捉一切到一個組中的逗號。查看[this regex101 fiddle](https://regex101.com/r/rF4aV3/1)查看工作演示。然而,這看起來像是一個'json'文件,所以也許有更好的方法,例如解析和替換。 – Jan