我有我試圖使用VBScript來處理一個文本文件,它看起來像這樣:VBScript的正則表達式替換頭痛
111 , , ,Yes ,Yes
222 , , ,Yes ,Yes
333 , , ,Yes ,Yes
444 , , ,Yes ,Yes
555 , , ,Yes ,Yes
666 , , ,Yes ,Yes
我想是刪除回車和製表符,逗號和「是」 (或正則表達式「\ t,\ t,\ t \ t,是\ t,是」)給出此輸出:
('111','222','333','444',' 555' , '666')
我使用這個代碼:
Const ForReading = 1
Const ForWriting = 2
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.OpenTextFile(filePath, ForReading)
strText = objFile.ReadAll
objFile.Close
'chr(010) = line feed chr(013) = carriage return
strNewText = Replace(strText, "\t,\t,\t\t,Yes\t,Yes" & chr(013) & chr(010), "','")
Set objFile = objFSO.OpenTextFile(filePath, ForWriting)
objFile.WriteLine strNewText
objFile.Close
然而,這並沒有給出所需的輸出,如果我將「」\ t,\ t,\ t \ t,是\ t,是「&」取出,它將刪除回車符,這很好但我還需要刪除逗號標籤和'yes',並在結尾處設置('開頭和')。我猜這是我用正則表達式的方式,但我沒有用太多的VBScript所以我不知道
QED !!! :)這樣做的夢幻般的方式,我根本不明白的代碼 - 你可以添加另一行顯示我的文本文件到數組中? –
當我嘗試編寫輸出時,出現錯誤數量的參數錯誤?使用這行代碼: 'strNewText =替換(sAll,sRes)' –
替換需要3個參數(請參閱您自己的代碼)。但是我沒有看到這個操作的任何理由 - 如果你想將結果寫入文件,只需執行「objFile.WriteLine sRes」。 –