Ho un file di testo con il seguente testoSostituire tutto il testo in file di testo utilizzando un'espressione regolare
161624.406 : Send:[sometext1] 161624.437 : Send:[sometext2] 161624.468 : Send:[sometext3] 161624.499 : Send:[sometext4] 161624.531 : Send:[sometext5]
voglio tenere solo la someText parte in quel file. output desiderato è
sometext1 sometext2 sometext3 sometext4 sometext5
Sto usando il seguente codice in Excel-VBA
Public Sub testa()
a = "C:\Users\pankaj.jaju\Desktop\test.log"
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objTxtFile = objFSO.OpenTextFile(a, 1)
strText = objTxtFile.ReadAll
objTxtFile.Close
Set objTxtFile = Nothing
Set objRegEx = CreateObject("VBScript.RegExp")
With objRegEx
.Global = True
.MultiLine = True
.Pattern = "\[([^]]+)\]"
Set objRegMC = .Execute(strText)
b = objRegMC(0).SubMatches(0)
End With
Set objRegEx = Nothing
Debug.Print b
End Sub
Il problema è che l'output viene visualizzato come solo sometext1. Come faccio a ReplaceAll
nel file di testo e salvo il file con il solo testo desiderato.
Suppongo che sia corretto eliminare il file in modo sostanziale e ricrearlo o è necessario che funzioni sullo stesso file? –
Questa non è una cosa fondamentale ... Posso fare sia –
Per quelli meno legati alla regex da testo a colonne può essere molto più conveniente. – pnuts