Анализ файла с управляющими символами - PullRequest
0 голосов
/ 21 декабря 2011

У меня есть этот файл, в котором есть контрольные символы, такие как десятичные 29, 30. В блокноте ++ они выходят в GS, RS соответственно. В C # я делаю File.ReadAllLines ... затем для каждой строки мне нужно разделить всю строку на эти символы управления.

Допустим, у меня есть строка, как в:

1RSACCTGS2RS718GS3RS425 ...

Элементы, которые я ожидал бы: 1, ACCT, 2, 718, 3, 425 ...

Я имею в виду, что могу поместить строку в toCharArray, а затем проверить каждый символ, если это элемент управления, как в:

if (char.IsControl (c)), но я не думаю, что это слишком эффективно. Я думаю, регулярное выражение было бы неплохо, но я не знаю, как его написать. Есть идеи?

Спасибо

David

1 Ответ

0 голосов
/ 21 декабря 2011

Используйте метод string.Split и передайте ему массив управляющих символов, на которые вы хотите разделить:

// Add other special characters on which you'd like to split to the array below
var tokens = line.Split(new[] {(char) 29, (char) 30});

Теперь tokens содержит массив подстрок исходной строки, разделенных специальными символами. Несколько специальных символов в строке игнорируются.

...