Я крутил колеса, пытаясь понять это. Мне нужно заменить двойные кавычки внутри набора скобок. Мой пример ниже показывает одиночные кавычки, но я до сих пор возникают проблемыVB.Net Regex заменить двойную цитату внутри скобок
Это работает для меня -
Dim input As String = "This is my ['Test'] that works"
Dim output As String = Regex.Replace(input, "(?<=my.*)'(?=.*that)", "?")
создавшего эту строку - This is my [?Test?] that works
.
Но если я пытаюсь это присоединяет вместо того, чтобы заменить одиночные кавычки -
Dim input As String = "This is my ['Test'] that works"
Dim output As String = Regex.Replace(input, "(?<=[.*)'(?=.*])", "?")
Производит это, который не то, что я хочу - This is my ['?Test'?] that works
.
Как вы видите, Regex.replace добавляет? после одной кавычки, но мне нужно, чтобы заменить одну цитату на. Я в тупике.
"Я поставлен в тупик" - * Так я *. –
Escape '['. '(? <= \ [. *) '(? =. *])' '. *' слишком жадный и может переборщить с большим текстовым вводом. –