2017-03-01 18:42:36 +00:00
|
|
|
Dim action, pat, patparts, rxp, inp, matchCount
|
|
|
|
action = WScript.Arguments(0)
|
|
|
|
pat = WScript.Arguments(1)
|
2016-04-27 12:03:10 +00:00
|
|
|
pat = Replace(pat, """, chr(34))
|
|
|
|
pat = Replace(pat, "&hat;", "^")
|
|
|
|
pat = Replace(pat, "&", "&")
|
2017-03-01 18:42:36 +00:00
|
|
|
|
2016-04-27 12:03:10 +00:00
|
|
|
Set rxp = new RegExp
|
|
|
|
rxp.Global = True
|
|
|
|
rxp.Multiline = False
|
2017-03-01 18:42:36 +00:00
|
|
|
If action = "Replace" Then
|
|
|
|
patparts = Split(pat, "/")
|
|
|
|
rxp.Pattern = patparts(0)
|
|
|
|
Else
|
|
|
|
rxp.Pattern = pat
|
|
|
|
End If
|
|
|
|
|
|
|
|
matchCount = 0
|
2016-04-27 12:03:10 +00:00
|
|
|
Do While Not WScript.StdIn.AtEndOfStream
|
|
|
|
inp = WScript.StdIn.ReadLine()
|
2017-03-01 18:42:36 +00:00
|
|
|
If rxp.Test(inp) Then
|
|
|
|
matchCount = matchCount + 1
|
|
|
|
End If
|
|
|
|
If action = "Replace" Then
|
|
|
|
WScript.Echo rxp.Replace(inp, patparts(1))
|
2016-04-27 12:03:10 +00:00
|
|
|
End If
|
|
|
|
Loop
|
2017-03-01 18:42:36 +00:00
|
|
|
|
|
|
|
If action = "Replace" Then
|
|
|
|
If matchCount = 0 Then
|
|
|
|
WScript.Quit(2)
|
|
|
|
End If
|
|
|
|
Else
|
|
|
|
WScript.Echo matchCount
|
2016-04-27 12:03:10 +00:00
|
|
|
End If
|