复杂的过滤器以在C#中查找字符串的一部分

我有一个字符串需要解析,但是我不确定如何在不使用大量if语句和子字符串的情况下进行操作。这是我使用“”分割的csv文件中的字符串的示例,因为我不能使用逗号。

偏移量:23,123长度:504其他一些文本其他一些文本213I

胶印:23,123长度:504其他文字

偏移量:23,123长度:504

偏移量:23长度:504,10其他一些文本其他一些文本213I

我需要的是Length之后的数值:

欢迎任何帮助。有人问过这种类型的问题,但不能满足我的问题。而且我不知道如何使用正则表达式。


汪汪一只猫
浏览 131回答 2
2回答

湖上湖

您可以为此使用正则表达式以及Expresso之类的工具来构建和测试正则表达式public static Regex regex = new Regex("Length:\\s*(\\d+)", RegexOptions.CultureInvariant | RegexOptions.Compiled);static void Main(){    var testValue = "Offset: 23,123 Length: 504";    var match = regex.Match(testValue);    if (match.Success)    {        Console.WriteLine($"Length is {match.Groups[1].Value}");    }}正则表达式为Length:\s*(\d+)说明:Length:后跟0个或多个空格,然后需要捕获1个或多个数字的组。
打开App,查看更多内容
随时随地看视频慕课网APP