Это не совсем ответ, ни в коем случае не удовлетворительный: https://code.djangoproject.com/ticket/30306
В двух словах: «мы не добавляя его ".
Если двоеточие разделителя разделяется пробелом, можно использовать \s для соответствия пробелу:
string example = "a : b : \"c:d\"";
string[] splits = Regex.Split(example, @"\s:\s");
Это, кажется, работает в RegexBuddy на меня
(\w+)\s:\s(\w+)\s:\s"(\w+:\w+)"
вход
a: b: "c:d"
подобранные группы
- a
- b
- c:d
Как всегда быть осторожным и понять то, что на самом деле делает regex. Не просто скопируйте вслепую. Это соответствует словесным символам \w
, пробелы \s
, и т.д. Рассмотрите, какие данные Ваш вход будет на самом деле иметь в нем!