Как включить разделители в результат соответствия регулярному выражению?

В настоящее время я делаю поиск и замену, используя этот шаблон:
"(?<=\\{).+?(?=\\})", Это находит все в фигурных скобках. (Предоставлено https://stackoverflow.com/a/8526268/1143917)

Я использую MatchEvaluator с делегатом, поэтому, когда входная строка {this} is a {string}делегат получает this а также string,

Это не хорошо для меня, потому что я хочу заменить как спички, так и фигурные скобки.

Как изменить выражение регулярного выражения, чтобы делегат получал совпадения с включенными фигурными скобками, т.е. {this} а также {string}?

2

Решение

Удалите позитивный взгляд назад и позитивный взгляд, и просто используйте скобки:

 "\\{[^\\}]+\\}"

Я не могу быть уверен в этом, потому что я никогда не использовал регулярные выражения с C ++, но принцип соответствует {плюс все символы, которые не являются }плюс },

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]