选择性阅读,将文本存储在 VB

Selectively read, store text in VB

我有一个很长的一行 EDI 格式的文本文件,我需要找到一种方法来读取和存储文件的特定部分。在整个文件中,有几个“[UNWANTED TEXT]CLM*[NUMBER]*[UNWANTED TEXT]”实例,我需要能够获取 [NUMBER] 部分,并将其存储并显示在某处。我已经能够使用 Streamreader 读取整个文件并显示它,但我不知道如何将它缩小到我想要的部分。有什么建议吗?

我现在在 VB.NET 工作,但如果它提供更简单的方法,我愿意转向另一种语言。

感谢您提供的任何帮助。

您可以使用正则表达式识别模式,并通过 RegexMatch 类 的 System.Text.RegularExpressions 找到您想要的值。像这样的事情应该让你开始:

Imports System.Text.RegularExpressions
Public Function getCLM(ediString as string) as string

    Dim regex As New Regex("CLM\*(\d*\.?\d*)")
    Dim match As Match = regex.Match(yourString)
    If match.Success Then Return match.Value
End Function

Dim yourString as String = ""
Dim clmNumber as string = getCLM(yourString)

在这种情况下,您必须将 EDI 字符串加载到您的字符串中。您可以通过使用 Regex101

之类的东西来查看我放在这里的正则表达式的功能

这是假设您的字符串只有一个匹配此模式。