Поскольку VBScript не поддерживает lookbehinds, я ищу альтернативное решение.Регулярное выражение Отрицательный альтернативный вариант для VBScript
У меня есть строка '\ E \ F \'.
Я хочу заменить \ F \ на '~', но ТОЛЬКО, если ему не предшествует символ \ E.
После подстановки я хочу '\ E \ F \' быть '\ E \ F \'.
Если строка была «randomText \ F \», я хотел бы, чтобы она выглядела как «randomText ~» после замены.
Решение:
Я просто решил StrReverse его и сделать отрицательный вперед предпросмотр. Это не самое элегантное решение, но, похоже, оно работает в этом случае.
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, "%")
Различные библиотеки регулярных выражений имеют различный синтаксис. К чему вы кормите свои регулярные выражения? – moonshadow