【问题标题】:Can't get 2 different Substrings from a String C# [duplicate]无法从字符串 C# 中获取 2 个不同的子字符串 [重复]
【发布时间】:2018-09-27 12:57:41
【问题描述】:

我有一个任务。 我应该从一个字符串中提取两个子字符串。 String 的长度每次都会不同,所以方法应该是泛型的。

假设我有以下字符串:

/*Description:\r\n*RANGE:\r\n*HIGH\r\n*LOW\r\n*/

我需要获取substring1= HIGHsubstring2= LOWsubstring1substring2 将始终位于 \r\n 之间,但它们的值会有所不同。

如果有人帮助我,我将不胜感激。它可以是伪代码,任何东西。

提前致谢。

UPDATE1:我首先搜索“RANGE:\r\n*”并获取字符 * 的索引和索引 og 字符“H”。但是接下来不知道如何获取整个子字符串。

【问题讨论】:

  • 那么到目前为止,您尝试过什么?您能否显示您当前尝试的代码?
  • \r\n分割字符串,然后遍历生成的数组
  • 你在找最后两行吗(不包括评论结尾)?
  • @Richard 你是对的。我有几个这样的 cmets,我需要取两个值来转发字符串“RANGE:”
  • 您可能不知道 C# 字符串类有一个Split() 方法。你应该检查一下。

标签: c# string substring


【解决方案1】:

如果您提供的模式与您一直期望的模式相似,那么愚蠢的简单方法是:

public static string[] GetParts(string input)
{
    string[] parts= input.Split("\r\n", StringSplitOptions.RemoveEmptyEntries);
    return parts.TakeLast(2).Select(item=>item.Replace("*", string.Empty)).ToArray();
}

注意:这不是生产质量代码。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-08-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-30
    • 2011-05-25
    相关资源
    最近更新 更多