C# Regex - Заменить все пробелы, кроме тех которые в кавычках

Необходимо заменить все пробелы которые есть в тексте, кроме тех, которые находятся в кавычках ' и "

Найти все пробелы или весь текст в кавычках я могу, а вот как это совместить, я пока понять не могу.

Regex.Replace(text, @"("".*?"")|('.*?')|\s+", ",");

Пробовал и убрать "захват" в группу через (?:), но не помогло.


Ответы (1 шт):

Автор решения: UniverstM

Попробуйте Regex.Replace(text,@"\s+(?=([^"]*"[^"]*")*[^"]*$)");

→ Ссылка