【发布时间】:2019-08-02 21:00:04
【问题描述】:
我正在尝试将一个巨大的字符串分成不同的“部分”。这些部分由这一行 #========================================================= 分隔。问题是每个字符串都有不同的分隔符(==== 的数量不一样)
List<Section> sections = file.GetSections("#=========================================================");
List<Section> sections = file.GetSections("#=========================================");
public List<Section> GetSections(string separator)
{
List<Section> sections = new List<Section>();
string[] values = _fileContent.Split(separator);
foreach (string value in values)
{
sections.Add(new Section(value));
}
return sections;
}
如您所见,我需要根据我正在使用的文件更改分隔符,因为所有分隔符都以#==== 开头。我想知道是否可以按“以#====开头的行”分割
【问题讨论】:
-
我很确定 Regex 可以做到这一点。但我不能真正为你提供代码,因为我自己还没有完全理解正则表达式。但这听起来确实像它的本意。
-
正则表达式可能是最简单的。然而,一个好的老式 for 循环和状态机也将超级容易和超级快。状态一,你在文本中,状态二你找到了一个哈希,状态三你在一堆等号中
-
第一部分是否以分隔符开头?