使用regex.replace与RegexOptions.Singleline一起使用VBScritp的正确语法

时间:2014-09-04 18:09:58

标签: regex replace vbscript

使用正则表达式替换为RegexOptions.Singleline

时,我无法获得VBScript的正确语法

目标是从strSearchString中提取一些文本并使用后引用来保存我想要的提取数据$ 1 = abc-123和$ 2 = 122 $ 3 = 133 $ 4 = 144 $ 5 = 155

我可以使用单行选项将正则表达式模式用于各种RegEx在线测试人员,但是  不确定VBScript的正确语法,我在尝试的各种事情上遇到弹出错误。

Error:  Object required: ' RegexOptions'
Code: 800A01A8

这是我的代码:

Set objRegEx = New RegExp

objRegEx.Global = True
objRegEx.Pattern ="(\S+)\r\n.+\040ip\040address\040(\d+)\056(\d+)\056(\d+)\056(\d+)"

strSearchString = "abc-123" + vbCrlf + " Company Name Street Address" + vbCrlf + " ip address 122.133.144.155"

Wscript.Echo strSearchString

strExtract = objRegEx.Replace(strSearchString, objRegEx.Pattern, "test $1 $2 $3 $4 $5", RegexOptions.Singleline)

Wscript.Echo strExtract

1 个答案:

答案 0 :(得分:1)

Vbscript不支持单行模式,但你可以尝试这种模式:

(\S+)[\s\S]*ip\saddress\s(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})