Regex VBS正则表达式搜索和替换
我试图使用vbs脚本替换包含以下行的.ini文件中的限制值: CC_退款_限额=。 不幸的是。可以是任何美元的价值。我将用标准替换: CC_退款_限额=500.00 我用人类已知的每个括号中包含的\d\d+的每一个变体尝试了以下内容,甚至在测试文件上尝试了[0-999]。我能让它工作的唯一方法是使用以下代码,并且仅当字符串包含实际的美元值时。我在尽可能多的不同服务器上有超过1600个实例来替换它 请提供以下指导:Regex VBS正则表达式搜索和替换,regex,replace,vbscript,numbers,Regex,Replace,Vbscript,Numbers,我试图使用vbs脚本替换包含以下行的.ini文件中的限制值: CC_退款_限额=。 不幸的是。可以是任何美元的价值。我将用标准替换: CC_退款_限额=500.00 我用人类已知的每个括号中包含的\d\d+的每一个变体尝试了以下内容,甚至在测试文件上尝试了[0-999]。我能让它工作的唯一方法是使用以下代码,并且仅当字符串包含实际的美元值时。我在尽可能多的不同服务器上有超过1600个实例来替换它 请提供以下指导: `Const ForReading = 1 Const ForWriting =
`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
`是否只有一行包含该文本?如果您不在乎美元金额是多少?iCC_return_limit=[$\d.]*Re URL:搜索并用replaceTrue替换REPALCE问题:如果您可以在.pattern和.global前面插入r,那么为with和End with多写两行有什么意义?太好了!谢谢我也在研究这个版本,但就是没法让它做任何事情。我感谢你的帮助!!!
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
Set r = New Regexp
With r
.pattern = "CC_refund_limit=\d+\.\d+"
.global = true
End with
StrNewText = r.Replace(strText,"CC_refund_limit=500.00")
Set objFile = objFSO.OpenTextFile("C:\EDC\Edc.ini", ForWriting)
objFile.WriteLine strNewText
objFile.Close