替换文本文件中的数字字符串
Replace Number Strings in Text File
我需要 VBScript 或批处理代码来替换文本文件一行中的 5 个字符(下面的粗体数字)以更改端口号。
change_port.vbs
:
prefsFile = "%userprofile%\Desktop\teste.msrcincident"
prefsFile = CreateObject("WScript.Shell").ExpandEnvironmentStrings(prefsFile)
newPrefs = "5500"
Set fso = CreateObject("Scripting.FileSystemObject")
json = fso.OpenTextFile(prefsFile).ReadAll
Set re = New RegExp
re.Pattern = "":*?",*,"
json = re.Replace(json, ": & newPrefs & ",*,")
fso.OpenTextFile(prefsFile, 2).Write(json)
原始文本文件:
RCTICKET="65538,1,10.0.0.1:54593,*,ucIdnri2n4QPf/bv92mtx4w2qliCNdyDgBpHPr7nJFdxYL2/dR+iel9Mh4zgD6QR,*,*,Fbjf5rcIrdrlnibnisrzRcO8tsY=" PassStub="HG)7HbhIZPTiKy" RCTICKETENCRYPTED="1" DtStart="1457700115" DtLength="142560" L="0"/></UPLOADINFO>
预期结果文本文件:
RCTICKET="65538,1,10.0.0.1:5500,*,ucIdnri2n4QPf/bv92mtx4w2qliCNdyDgBpHPr7nJFdxYL2/dR+iel9Mh4zgD6QR,*,*,Fbjf5rcIrdrlnibnisrzRcO8tsY=" PassStub="HG)7HbhIZPTiKy" RCTICKETENCRYPTED="1" DtStart="1457700115" DtLength="142560" L="0"/></UPLOADINFO>
谁能帮帮我?
您的搜索和替换表达式一团糟。您正在寻找一个冒号 (:
) 后跟一个或多个数字(\d+
或 [0-9]+
)后跟一个逗号 (,
),并且想要替换它带有冒号,后跟新端口号和逗号。
改变这个:
re.Pattern = "":*?",*,"
json = re.Replace(json, ": & newPrefs & ",*,")
进入这个。
re.Pattern = ":\d+,"
json = re.Replace(json, ":" & newPrefs & ",")
总是让你的表达尽可能简单。
我需要 VBScript 或批处理代码来替换文本文件一行中的 5 个字符(下面的粗体数字)以更改端口号。
change_port.vbs
:
prefsFile = "%userprofile%\Desktop\teste.msrcincident"
prefsFile = CreateObject("WScript.Shell").ExpandEnvironmentStrings(prefsFile)
newPrefs = "5500"
Set fso = CreateObject("Scripting.FileSystemObject")
json = fso.OpenTextFile(prefsFile).ReadAll
Set re = New RegExp
re.Pattern = "":*?",*,"
json = re.Replace(json, ": & newPrefs & ",*,")
fso.OpenTextFile(prefsFile, 2).Write(json)
原始文本文件:
RCTICKET="65538,1,10.0.0.1:54593,*,ucIdnri2n4QPf/bv92mtx4w2qliCNdyDgBpHPr7nJFdxYL2/dR+iel9Mh4zgD6QR,*,*,Fbjf5rcIrdrlnibnisrzRcO8tsY=" PassStub="HG)7HbhIZPTiKy" RCTICKETENCRYPTED="1" DtStart="1457700115" DtLength="142560" L="0"/></UPLOADINFO>
预期结果文本文件:
RCTICKET="65538,1,10.0.0.1:5500,*,ucIdnri2n4QPf/bv92mtx4w2qliCNdyDgBpHPr7nJFdxYL2/dR+iel9Mh4zgD6QR,*,*,Fbjf5rcIrdrlnibnisrzRcO8tsY=" PassStub="HG)7HbhIZPTiKy" RCTICKETENCRYPTED="1" DtStart="1457700115" DtLength="142560" L="0"/></UPLOADINFO>
谁能帮帮我?
您的搜索和替换表达式一团糟。您正在寻找一个冒号 (:
) 后跟一个或多个数字(\d+
或 [0-9]+
)后跟一个逗号 (,
),并且想要替换它带有冒号,后跟新端口号和逗号。
改变这个:
re.Pattern = "":*?",*,"
json = re.Replace(json, ": & newPrefs & ",*,")
进入这个。
re.Pattern = ":\d+,"
json = re.Replace(json, ":" & newPrefs & ",")
总是让你的表达尽可能简单。