Выберите и покажите символы / строки между определенными разделителями в C # .net - PullRequest
0 голосов
/ 05 апреля 2011

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

ABCD *% HelloWorld; df4 * Thisis ;? Sf4er7 Тест ; SDF

Из приведенного выше текста, Я хочу получить HelloWorld в textbox1, Thisis в textbox2 и Test в textbox3.

Каждый из них лежит между "%;" и "?".

Я хочу, чтобы это произошло в одном событии. Как мне сделать это в C # .net? Предложите мне самый быстрый, но самый простой способ сделать это!

Ответы [ 3 ]

1 голос
/ 05 апреля 2011

Попробуйте это.http://en.csharp -online.net / Manipulating_Strings_in_CSharp% E2% 80% 94Splitting_a_String

string input ="abcd*%HelloWorld;df4?*Thisis;sf4er7?Test;sdf"
input = input.Replace('%').Replace('?')
string[] splited = input.split(';')

Или Regex http://msdn.microsoft.com/en-us/library/8yttk7sy.aspx

string input = "plum--pear";
string pattern = "-";            // Split on hyphens

string[] substrings = Regex.Split(input, pattern);
foreach (string match in substrings)
{
   Console.WriteLine("'{0}'", match);
}
0 голосов
/ 05 апреля 2011

Я думаю, что вы должны сначала объединить сплиттеры, например, заменить "%" и "?"с уникальным характером, как '|'или даже пробел.

затем разделите строку по заданному вами унифицированному символу.

точно, если вы знаете индексы, вы получите массив строк, которые вернулись из процесса разделения, иполучит в каждом указателе нужное слово или фразу

0 голосов
/ 05 апреля 2011

Для такого простого случая я бы использовал String.Split - что-то простое, как string.Split(new string[] {"%;", "?;"}, StringSplitOptions.RemoveEmptyEntries);

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