作为this问题
的延续假设我有一个字符串:
String myString = "violet are blue|roses are red|this is a terrible poet";
我想修剪它说“玫瑰红了”的特定部分。这样它就变成了:
myString = "violet are blue|this is a terrible poet";
答案 0 :(得分:3)
您可以使用String.Replace
方法
string input = "violet are blue|roses are red|this is a terrible poet";
string expected = "violet are blue|this is a terrible poet";
string actual = input.Replace("roses are red|", String.Empty);
Debug.Assert(expected == actual);
答案 1 :(得分:2)
我认为您要使用|
字符来查找要删除的内容。
使用|
获取第一个IndexOf
的索引,然后获取第二个,然后使用Remove
获取字符串的其余部分:
int index1 = myString.IndexOf('|');
int index2 = myString.IndexOf('|', index1 + 1);
myString = myString.Remove(index1, index2 - index1);
答案 2 :(得分:1)
使用分割:
const string myString = "violet are blue|roses are red|this is a terrible poet";
const char itemToSplitOn = '|';
var arr = myString.Split(itemToSplitOn);
var newString = arr[0] + itemToSplitOn + arr[2];
答案 3 :(得分:0)
如果没有正则表达式的答案,问题就不会是完整的问题:)
String myString = "violet are blue|roses are red|this is a terrible poet";
var newstr = Regex.Replace(myString, @"\|.+?\|", "|");