массив разделенных строк на консоли? - PullRequest
2 голосов
/ 25 мая 2011

давайте возьмем, например, у меня объявлена ​​строка:

string master = "1.2.3.4";

, которая имеет вид:

major.minor.project.build

как мне получить строку"major", "minor", "project" и "build" назначаются отдельно от строки "master"?

Я знаю, что мы должны сделать line.split, и вот что я пробовал:

        string[] master = line.Split('.');
        string major = master[0];
        string minor = master[1];
        string project = master[2];
        string build = master[3];

Ответы [ 5 ]

5 голосов
/ 25 мая 2011

В этом конкретном случае вы можете использовать Version класс.

var master = "1.2.3.4";
var version = new Version(master);

var major = version.Major;
var minor = version.Minor;
var build = version.Build;
var revision = version.Revision;
0 голосов
/ 25 мая 2011

Я думаю, что для этого случая лучше использовать split.

Но если вы изучаете и другие варианты, вы можете использовать регулярное выражение для разделения чего-то вроде этого:

string[] lines = Regex.Split(master, "(\\.)");
0 голосов
/ 25 мая 2011

Попробуйте лайк

string master = "1.2.3.4";

string major = master.Split('.')[0];
string minor = master.Split('.')[1].;
string project = master.Split('.')[2];
string build = master.Split('.')[3];

или

string master = "1.2.3.4";
string [] arrayvar = master.Split('.');

 string major = arrayvar [0];         
string minor = arrayvar [1];         
string project = arrayvar [2];         
 string build = arrayvar [3]; 
0 голосов
/ 25 мая 2011

Мое скромное мнение: я не знаю, что вы считаете неправильным в вашем подходе.

Я собираюсь указать вам, что это правильный способ сделать это.

В других ситуациях вам необходимо идентифицировать части текста с помощью регулярных выражений, потому чтоВы хотите проверить, что такой ввод должен быть в каком-то определенном формате или около того.При этом используются группы соответствия с регулярными выражениями, но я считаю, что вы делаете все правильно, и любой другой подход был бы излишним.

0 голосов
/ 25 мая 2011

Предполагая, что вы хотите разделить строку на '.', чтобы получить мажор, минор, сборку и т.д.

string master = "1.2.3.4";
string [] arr = master.Split('.');

 string major = arr [0];         
string minor = arr [1];         
string project = arr [2];         
 string build = arr [3]; 
...