Ищете самый простой способ извлечь буксирные строки из другого в C # - PullRequest
1 голос
/ 14 июня 2011

У меня есть следующие строки:

string a = "1. testdata";
string b = "12. testdata xxx";

То, что я хотел бы, это иметь возможность извлекать число в одну строку и символы, следующие за номером, в другую. Я попытался использовать .IndexOf ("."), А затем удалить, обрезать и подстроки. Если возможно, я хотел бы найти что-то более простое, поскольку у меня есть это сделать в много частей моего кода.

Ответы [ 3 ]

4 голосов
/ 14 июня 2011

если формат всегда один и тот же, вы можете сделать:

a.Split('.');
1 голос
/ 14 июня 2011

Предлагаемые решения пока не верны.Во-первых, после Split ('.') Или Split (".") У вас будет пробел в начале второй подстроки.Во-вторых, если у вас более одной точки - вам придется что-то делать еще после разделения.

Ниже приведено более надежное решение:

string a = "11. Test string. With dots.";
var res = a.Split(new[] {". "}, 2, StringSplitOptions.None);
string number = res[0];
string val = res[1];

Аргумент 2 указывает максимальное количество строквозвращать.Таким образом, если у вас есть несколько точек - разделение будет выполнено только в первую очередь.

0 голосов
/ 14 июня 2011
string[]list = a.Split(".");
string numbers = list[0];
string chars = list[1];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...