Answers:
从字符串中读取最后3个字符[最初提出的问题]
您可以使用string.Substring并为其提供起始索引,它将获得从给定索引开始直至结束的子字符串。
myString.Substring(myString.Length-3)
从此实例检索子字符串。子字符串从指定的字符位置开始。MSDN
编辑,以更新帖子
从字符串中删除最后3个字符[更新的问题]
要从字符串中删除最后三个字符,可以使用string.Substring(Int32,Int32)并为其指定起始索引0和终止索引,使其比字符串length少三个。它将在最后三个字符之前获取子字符串。
myString = myString.Substring(0, myString.Length-3);
String.Substring方法(Int32,Int32)
从此实例检索子字符串。子字符串从指定的字符位置开始,并具有指定的长度。
您还可以使用String.Remove(Int32)方法通过将起始索引传递为length-3来删除最后三个字符,它将从此点删除到字符串的结尾。
myString = myString.Remove(myString.Length-3)
返回一个新字符串,其中删除了当前实例中从指定位置开始到最后一个位置的所有字符
我通读了所有这些内容,但想要一些更优雅的内容。只是从字符串末尾删除一定数量的字符:
string.Concat("hello".Reverse().Skip(3).Reverse());
输出:
"he"
Enumerable.Reverse将字符串char[]缓冲到中,然后缓冲到char[]短了3 的新字符串中,然后生成一个新字符串string(内部带有另一个char[])。更好的方法是new string("hello".Reverse().Skip(3)),或只编写自己的AllBut(this string in, int i)使用Substring 的字符串扩展功能。
Length存储了字符串。
.SkipLast(n)。无需撤消任何操作。"hello".SkipLast(3)给"he"
myString.Remove(myString.Length-3);
myString = myString.Remove(myString.Length - 3)那是。
string test = "abcdxxx";
test = test.Remove(test.Length - 3);
//output : abcd
您可以使用String.Remove从指定位置删除到字符串的末尾。
myString = myString.Remove(myString.Length - 3);
由于您说的是“动态数据”,因此可能与您要查找的内容不完全相同,但是在给出示例字符串的情况下,这也适用:
? "abcdxxx".TrimEnd('x');
"abc"
myString.Substring(myString.Length - 3, 3)
这是有关子字符串的示例。>>
http://www.dotnetperls.com/substring
引用那些。
从字符串中删除最后一个字符
TXTB_DateofReiumbursement.Text = (gvFinance.SelectedRow.FindControl("lblDate_of_Reimbursement") as Label).Text.Remove(10)
.Text.Remove(10)//用于删除从索引10到结尾的文本
简单。text = text.remove(text.length - 3)。我减去3是因为该Remove函数从该索引中删除了所有项,直到该字符串为text.length。因此,如果我减去3,则得到的字符串中有3个字符被删除。
您可以将a其概括为从字符串末尾删除字符,如下所示:
text = text.remove(text.length - a)
所以我所做的是相同的逻辑。该remove函数从其内部到字符串的末尾(即文本的长度)删除所有项。因此,如果我a从字符串的长度中减去,这将为我提供a删除了字符的字符串。
因此,它不仅适用于3,而且适用于所有正整数,除非字符串的长度小于或等于a,在这种情况下,它将返回负数或0。