如果我有以下字符串:
String test;
test = "bla bla bla XYZ bla bla bla XYZ bla bla bla";
如何从字符串中删除包括XYZ首次出现在内的所有内容。所以我最终应该:
test2 = "bla bla bla ";
注意: bla bla bla
可以是任何内容,事先不知道XYZ
的位置,事先也不知道XYZ's
的数量。< / p>
答案 0 :(得分:4)
尝试使用String.IndexOf和String.Substring。
String test;
test = "bla bla bla XYZ bla bla bla XYZ bla bla bla";
test.Substring(0, test.IndexOf("XYZ"));
答案 1 :(得分:3)
您可以使用String.Substring
和String.IndexOf
方法。
这是LINQPad;
中的示例string test = "bla bla bla XYZ bla bla bla XYZ bla bla bla";
test.Substring(0, test.IndexOf("XYZ")).Dump();
此印刷品
bla bla bla
这里有 demonstration
。
IndexOf
获取您的第一个XYZ
出现的索引,无论您有多少XYZ
。 Substring
方法将0
索引中的所有字符都获取到该索引。
注意:结果在结尾处有一个空格,但您无法在此处看到:)
答案 2 :(得分:1)
另一种方式:
var test = "bla bla bla XYZ bla bla bla XYZ bla bla bla";
var result = test.Split(new [] { "XYZ" },StringSplitOptions.None).First();