gpt4 book ai didi

c# - 删除最后一个字母后的所有字符

转载 作者:太空狗 更新时间:2023-10-29 20:54:48 26 4
gpt4 key购买 nike

以下简单程序将找到用户输入的字符串中的最后一个字母,然后删除该点之后的所有字母。所以,如果一个人输入一个 string....g 之后的所有内容都应该被删除。我有以下小程序:

class Program
{
static void Main(string[] args)
{
Console.Write("Enter in the value of the string: ");
List<char> charList = Console.ReadLine().Trim().ToList();

int x = charList.LastIndexOf(charList.Last(char.IsLetter)) ;
Console.WriteLine("this is the last letter {0}", x);
Console.WriteLine("This is the length of the string {0}", charList.Count);
Console.WriteLine("We should have the last {0} characters removed", charList.Count - x);

for (int i = x; i < charList.Count; i++)
{
charList.Remove(charList[i]);
}

foreach (char c in charList)
{
Console.Write(c);
}
Console.ReadLine();
}
}

我已经尝试了很多变体,但没有一个能准确地写出来。这个输入为 string.... 的特定程序程序的输出是 strin.. 所以不知何故它留下了它应该带走的东西并且它实际上正在带走去掉不应该的字母。谁能说明为什么会这样?所需的输出,同样应该是 string

最佳答案

试试这个:

string input = Console.ReadLine();                // ABC.ABC.
int index = input.Select((c, i) => new { c, i })
.Where(x => char.IsLetter(x.c))
.Max(x => x.i);
string trimmedInput = input.Substring(0, index + 1);
Console.WriteLine(trimmedInput); // ABC.ABC

关于c# - 删除最后一个字母后的所有字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16279141/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com