Разделить первую часть строки - PullRequest
1 голос
/ 07 ноября 2011

У меня есть строка, подобная этой

187878 - мой текстовый комментарий - это комментарий пользователя - последний

Я должен принять первое значение, котороемой сотрудник, т.е. 187878, и мне нужен оставшийся комментарий.

Я использую это,

string[] myText = textbox1.text.split('-');

, но это разбило строку на 3 части, и я не могу получить комментарий какцелое.Как я могу получить первый идентификатор в другой переменной и оставить комментарий в другой переменной.

Нужно ли повторять цикл?

Ответы [ 3 ]

1 голос
/ 07 ноября 2011
using System.Linq;

var firstPart = textbox1.Text.Split('-')
                                .First()
                                .Trim();

var lastTwoParts = textbox1.Text.Split('-')
                           .Skip(1)
                           .Take(2);
1 голос
/ 07 ноября 2011

Используйте перегрузку string.Split, которая принимает значение:

string[] myText = input.Split(new char[] { '-' }, 2);
if (myText.Length != 2) { /* error */ }
int employeeId;
if (!int.TryParse(myText[0], out employeeId)) { /* error */ }
string comment = myText[1];
0 голосов
/ 07 ноября 2011

Используйте регулярное выражение. Я не помню точный синтаксис .net (который зависит от того, какой язык вы используете), но само регулярное выражение должно быть:

/^(\d+) - (.*?) - (.*?) - (.*)$/

Затем вы можете разделить значения, используя группы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...