由于VBScript不支持向后查找,我正在寻找替代解决方案。
我有字符串'\E\F \'。
我想要将 \F\ 替换为 '~',但只有在它前面没有 \E 的情况下才能替换。
替换后,我希望 '\E\F\' 仍然是 '\E\F\'。
如果字符串是 'randomText\F\',那么我希望替换后它看起来像 'randomText~'。
解决方案:
我决定倒转它并进行负向前瞻。 这不是最优雅的解决方案,但在这种情况下似乎可以工作。
Dim regEx, str1
str1 = StrReverse("The quick \F\ brown \E\F\ dog.")
Set regEx = New RegExp
regEx.IgnoreCase = True
regEx.Pattern = "\\F\\(?!E\\)"
regEx.Global = True
ReplaceTest = regEx.Replace(str1, "%")