C# 分析文本文件以提取特定行
本文关键字:提取 文件 文本 | 更新日期: 2023-09-27 18:27:18
我有一个文本文件,每个文本文件在新行上都包含大量数据但我想提取以值开头的行:
坐标=(111,222,333(
这条线有几个实例,我实际上想提取部分"111,222,333"我该怎么做?
类似
var result = File.ReadAllLines(@"C:'test.txt")
.Where(p => p.StartsWith("coordinates=("))
.Select(p => p.Substring(13, p.IndexOf(')') - 13));
第一行很清楚,第二行只过滤以coordinates=(
开头的行,第三行提取子字符串(13是coordinates=(
的长度(
result
是一个IEnumerable<string>
。您可以使用result.ToArray()
将其转换为数组
var text = File.ReadAllText(path);
var result = Regex.Matches(text, @"coordinates='(('d+),('d+),('d+)')")
.Cast<Match>()
.Select(x => new
{
X = x.Groups[1].Value,
Y = x.Groups[2].Value,
Z = x.Groups[3].Value
})
.ToArray();