【发布时间】:2022-01-23 06:29:43
【问题描述】:
我希望通过正则表达式返回上一行中的特定组。
假设我有以下信息,目标是根据下一行的微分提取90的值。
QTY+66:90:PCE
SCC+2
DTM+45:20200416:15
QTY+66:60:PCE
SCC+3
DTM+35:20210614:2
如果我要追踪值 90,我必须寻找 SCC+2 标记,如果我要寻找值 60,它将是SCC+3 标签。
我在尝试返回值 90 (?<=^QTY\+66:)(\d+)(.*\n.*SCC\+2.*) 时走了这么远,但它看起来很复杂,我无法仅提取第 1 组。这是指向 regex101 的链接。我将 R 用于实际应用程序。感谢您的帮助!
【问题讨论】:
-
所以不用大张旗鼓,它只是
.*YOURVALUE.*\r?\n.*还是仅此而已?如果没有,那么您需要强调 value added highlight constants 以进行正确的分隔匹配。您的解释有很多漏洞并且不清楚,并且没有必要的细节来进行最简单的匹配。如果你说细节在那里,那么为什么这个问题既然已经回答了。
标签: regex