2015-05-23 2 views
-1

EDITсловарь из строки пропускает символ новой строки

(C#) У меня есть словарь закодированный в виде строки, и я хочу, чтобы получить его обратно. Проблема в том, что я использую регулярное выражение, и я получаю словарь без ключа «\ n».

Вот код для предварительного просмотра консольного приложения: dictionaries example

Если вы можете видеть, первый и второй словари не совпадают. Извините, парни за плохой формат вопроса.

+1

Это * действительно * трудно понять ваш вопрос с изображениями, как это. Было бы намного проще помочь вам, если бы вы могли предоставить короткую, но полную программу, демонстрирующую проблему. Я настоятельно рекомендую вам отделить часть словаря от части регулярного выражения - я подозреваю, что это не имеет никакого отношения к словарям. (И «Я пытаюсь получить байтовый номер« char », не имеет смысла ...) –

+0

Не включайте _pictures_ текста. Вместо этого включите текст. – DrKoch

+0

«словарь, закодированный как строка», что это значит. Не могли бы вы показать фрагмент кода, в котором этот словарь построен, и некоторые примеры данных? – DrKoch

ответ

1

Потому что ваш вопрос недостаточно ясен. Я должен буду сделать некоторые предположения здесь. Попробуйте добавить RegexOptions.Singleline вариант для вашего Regex.

var dictionary = Regex.Matches(frequencies, @".\d+.", RegexOptions.Singleline).Cast<Match>().ToDictionary(x => Convert.ToByte(x.Value[0]), x => int.Parse(x.Value.Substring(1, x.Value.Length - 2))); 

Test Online

+1

Большое спасибо, он решил мою проблему! Также мне жаль, что я не мог четко объяснить, в чем моя проблема. :) – GrandaS