gpt4 book ai didi

vbscript - 使用vbscript替换文本文件中的多个文本

转载 作者:行者123 更新时间:2023-12-01 01:52:55 24 4
gpt4 key购买 nike

我正在尝试从一个文本文件中替换 3 个文本。我试过了-

Const ForReading = 1
Const ForWriting = 2

Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.OpenTextFile("W:\Test.txt", ForReading)

strText = objFile.ReadAll
objFile.Close
strNewText = Replace(strText, "Aron_", "Lori_")
strNewText1 = Replace(strText, "Aron", "Jason") 'Not working
strNewText2 = Replace(strText, "Sketa", "Skicia") 'Not working


Set objFile = objFSO.OpenTextFile("W:\Test.txt", ForWriting)
objFile.WriteLine strNewText
objFile.WriteLine strNewText1 'Not working
objFile.WriteLine strNewText2 'Not working


objFile.Close

我无法弄清楚如何进行多次替换。该代码非常适合单个替换功能,但不能超过一个...请帮助

最佳答案

你需要在之前的Replace的结果上调用Replace:

Const ForReading = 1
Const ForWriting = 2

Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.OpenTextFile("W:\Test.txt", ForReading)

strText = objFile.ReadAll
objFile.Close
strNewText = Replace(strText, "Aron_", "Lori_")
strNewText1 = Replace(strNewText, "Aron", "Jason")
strNewText2 = Replace(strNewText1, "Sketa", "Skicia")

Set objFile = objFSO.OpenTextFile("W:\Test.txt", ForWriting)
objFile.WriteLine strNewText2

objFile.Close


您实际上可以重复使用单个变量,而不是使用 strNewTextstrNewText1strNewText2

strText = Replace(strText, "Aron_", "Lori_")
strText = Replace(strText, "Aron", "Jason")
strText = Replace(strText, "Sketa", "Skicia")

及以后:

objFile.WriteLine strText


此外,您可能需要考虑使用正则表达式一次匹配多个值。 (在 SO 上搜索 VBScript 正则表达式VBA 正则表达式。)

关于vbscript - 使用vbscript替换文本文件中的多个文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14973105/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com