/ / No puedo entender qué está mal con esta expresión regular - regex, vbscript

No puedo entender qué está mal con esta expresión regular - regex, vbscript

Así que escribí el siguiente vbscript para leer unarchivo que la línea de comandos de salida. El contenido del archivo sería simplemente (COMx) con x siendo el número de puerto del dispositivo en cuestión. Se supone que este script lee ese archivo y saca "x" y lo guarda en un nuevo archivo de texto. Escribí esto hace aproximadamente dos semanas y lo probé, funcionó. Ahora parece que, sin importar lo que haga, no puedo trabajar en absoluto. Esto es tan desconcertante como funcionó hace dos semanas. Ahora solo crea un archivo de salida sin nada en él. No sé si Cambié accidentalmente algo o qué, pero cualquier ayuda sería apreciada.

Const ForReading = 1
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.OpenTextFile("C:rtlstuffCOM.txt", ForReading)
strContents = objFile.ReadAll
objFile.Close

Set regex = New RegExp
With regex
.Pattern = ".*(COM(.+)?).*"
End With

Dim ComPort
If regex.Test(strContents) Then
ComPort = regex.Replace(strContents,"$1")
End If

Set objFSO=CreateObject("Scripting.FileSystemObject")
outFile="c:rtlstuffComPort.txt"
Set objFile = objFSO.CreateTextFile(outFile,True)
objFile.Write ComPort
objFile.Close

Respuestas

0 para la respuesta № 1

Un regex parece una exageración. Si sabe que la línea solo contiene "COMx", ¿por qué no usar uno de estos métodos?

" Option 1: Start at the 4th char...
strContents = Mid(objFile.ReadLine, 4)

" Option 2: Remove "COM" from the line...
strContents = Replace(objFile.ReadLine, "COM", "")