我正在嘗試使用vbs腳本替換包含以下行的.ini文件中的限制值: CC_refund_limit = ####。## 不幸的是,####。 ##可以是任何美元值。我正在用一個標準取代: CC_refund_limit = 500.00VBS RegEx搜索和Repalce
我已經嘗試了以下方法,每個包含在人類已知的每個括號中的變體\ d \ d +甚至試圖在測試文件中使用[0-999]。只有在字符串包含寫入的實際美元值的情況下,才能使其工作的唯一方法是使用以下代碼。我在許多不同的服務器上有超過1600個實例來替代它。
任何指導,將不勝感激:
`Const ForReading = 1
Const ForWriting = 2
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.OpenTextFile("C:\EDC\Edc.ini", ForReading)
strText = objFile.ReadAll
objFile.Close
strNewText = Replace(strText, "CC_refund_limit=200.00", "CC_refund_limit=500.00")
Set objFile = objFSO.OpenTextFile("C:\EDC\Edc.ini", ForWriting)
objFile.WriteLine strNewText
objFile.Close
`
難道只包含文本單行?如果你不在乎美元的金額是多少('?i)CC_refund_limit = [$ \ d。] *' – sln 2014-10-03 19:19:51