gpt4 book ai didi

C#如何获取字符串中字符的长度

转载 作者:行者123 更新时间:2023-11-30 21:52:50 26 4
gpt4 key购买 nike

我有一个[]string retry,里面有一些字符串,比方说:a 2 , a 3 , h 9, asd 123 等等。它们在字母和整数之间都有间隔。现在我需要得到字母部分有多长(在本例中“qwe 2”,字母长度为 3,整数部分为 2)。我稍后使用指定索引中的 .substring,其中字母部分结束,整数部分开始。

string[] s = new string[5];
List<string> retry = new List<string>();
int max = 1;

for (int i = 0; i < s.Length; i++)
{
s[i] = Console.ReadLine();
}

Console.WriteLine(" ");
Array.Sort(s);

for (int j = 0; j < s.Length; j++)
{
if (j > 0)
{
if (s[j] == s[j - 1])
{
max++;

if (retry.Any(x => x.Contains(s[j])))
{
retry.Add(s[j] + " " + max);
}
else
{
if (j <= s.Length - 1)
{
if (s[j-1] != s[j])
{
retry.Add(s[j] + " " + max);
}
else
{
retry.Add(s[j] + " " + max);
}
}
}
}
else
{
max = 1;
}
}
}

for (int j = 0; j < retry.ToArray().Length; j++)
{
for (int k = j + 1; k < retry.ToArray().Length; k++)
{
var a1=retry[j].Substring(0,1);
var a2 = retry[k].Substring(0,1);

if(a1==a2)
{
var b1 = retry[j].Substring(2);
var b2 = retry[k].Substring(2);

if(int.Parse(b1)>int.Parse(b2))
{
retry.Remove(a2 + " "+ b2);
}
else
{
retry.Remove(a1 + " " + b1);
}
}
}

Console.WriteLine(retry[j]);
}

Console.ReadKey();

这只适用于 1 个字母。

最佳答案

下面的代码应该得到预期的结果:

string [] entries =  {"xyz 1","q 2","poiuy 4"};
for(int i=0;i<entries.Length;i++)
{
var parts = entries[i].Split(' ');
var txtCount = parts[0].Length;
Console.WriteLine(String.Format("{0} {1}", txtCount, parts[1]));
}

关于C#如何获取字符串中字符的长度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34425908/

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