C# 在使用类似的键前缀时遇到问题,例如;Tag1";被称为,而不是;Tag10";尽管两者都存在
我有一个有效前缀数组,假设我们有“tag1”和“tag10”。C# 在使用类似的键前缀时遇到问题,例如;Tag1";被称为,而不是;Tag10";尽管两者都存在,c#,arrays,string,algorithm,prefix,C#,Arrays,String,Algorithm,Prefix,我有一个有效前缀数组,假设我们有“tag1”和“tag10”。 如果我删除前缀,使“tag1Date”和“tag1Name”变成“Date”和“Name”,问题是我最终也会得到“0Date”和“0Name”。 我想检查“tag1”后面的字符,看看它是否是一个数字,如果是,它必须是一个单独的标记,但无法使其工作。 很遗憾,无法显示代码,因为它是专有的。欢迎大家帮忙 按降序排列标记数组,然后删除前缀 比如说 数组应为[“tag10”、“tag1”] 然后首先删除标记10,然后删除标记1您需要知道要删
如果我删除前缀,使“tag1Date”和“tag1Name”变成“Date”和“Name”,问题是我最终也会得到“0Date”和“0Name”。
我想检查“tag1”后面的字符,看看它是否是一个数字,如果是,它必须是一个单独的标记,但无法使其工作。
很遗憾,无法显示代码,因为它是专有的。欢迎大家帮忙 按降序排列标记数组,然后删除前缀 比如说 数组应为[“tag10”、“tag1”]
然后首先删除标记10,然后删除标记1您需要知道要删除的前缀或预期的输出(从中可以推断要删除的前缀)。请提供有关什么是有效标记的更多信息。它是用户输入,可以是任何字符串?如果它是一个众所周知的字符串列表,只需对它们进行排序,以便在最不包含的字符串(tag1、ta、t等)之前检查最包含的字符串(tag10),或者在分隔符上拆分字符串。如果没有更多的上下文,这是很难回答的,我们所能做的就是抛出一些想法。你应该展示你正在使用的代码,这样人们可以帮助你找到一个有针对性的答案。如何删除标记?您可能无法共享确切的代码,但至少需要提供一个。@NetMage
OrderByDescending(x=>x)
应该可以工作,不是吗?为什么要指定长度?@RufusL我相信你是对的,但在我看来,考虑到可能影响顺序的Unicode和语言排序规则,这似乎是一种风险。