我在单个字符串中使用以下格式:
ABCD * %的HelloWorld;的 DF4 的 * THISIS ; sf4er7的测试; SDF
从上面的文字来看, 我想在textbox1中抓取HelloWorld,在textbox2中抓取Thisis,在textbox3中抓取。
它们各自位于“%;”和“?”之间。
我希望它在单一事件中发生。我如何在C#.net中执行此操作?建议我完成这项工作的最快,最简单的方法!
答案 0 :(得分:1)
试试这个。 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(';')
或正则表达式 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);
}
答案 1 :(得分:0)
对于这么简单的情况我会使用String.Split - 就像string.Split(new string[] {"%;", "?;"}, StringSplitOptions.RemoveEmptyEntries);
答案 2 :(得分:0)
我认为你应该首先统一拆分器,如替换“%”和“?”具有独特的字符,如'|'甚至是空间。
然后按照您设置的统一字符拆分字符串。
如果您知道索引将获取从拆分过程返回的字符串数组,并且您将在每个索引中获得一个单词或您想要的短语