如何将行首和行尾与特定文本相匹配

  • 本文关键字:文本 行首 regex pcre
  • 更新时间 :
  • 英文 :


我很难使用这个正则表达式。我正试图匹配以";CCD_ 1";其以";CHF";。

要搜索的文本是:

Zwischentotal   0,00          13,24               906,79 CHF
Zahlbetrag      0,00          13,25               906,80 CHF

到目前为止我的正则表达式:

(?<=Zahlbetrag)(?:.*?)((d+,d{2})(?=([s]*)CHF))

此操作的结果当前(使用https://regex101.com/):

Match 1:       0,00          13,25               906,80
Group 1: 906,80
Group 2: 906,80
Group 3:  

但我需要第一场比赛:

Match 1: 906,80

它应该只包括最后一个数字,而不是整行。有人知道如何做到这一点吗?

您可以使用

Zahlbetrag.*?Kd+,d{2}(?=s*CHF)

请参阅regex演示详细信息

  • Zahlbetrag-文字字符串
  • .*?-零个或多个字符(换行字符除外(,尽可能少
  • K-省略到目前为止匹配的文本
  • d+-一个或多个数字
  • ,-逗号
  • d{2}-两位数
  • (?=s*CHF)-与紧接着零个或多个空白然后是Zahlbetrag0的位置相匹配的正向前瞻
pattern = r"([d,]*) CHF$"
st = "Zahlbetrag      0,00          13,25               906,80 CHF"
result = re.search(pattern, st)
result[1]= '906,80'

相关内容

  • 没有找到相关文章

最新更新