正则表达式命令获取第二个空格后的字符串

问题描述 投票:0回答:1

我的输入如下:

Investments Total : 47,842.87 48,901.25 1,042.22 49,943.47 99.9794 2,100.60 2,100.60 0.00 0.00 0
Investments Total : 47,842.87 16,901.25 1,042.22 49,943.47 99.9794 2,100.60 2,100.60 0.00 0.00 0

输出目标是

48,901.25
16,901.25

意思是获取

Investments Total :

之后的第二个空格值

我尝试使用下面的命令

(?<=Investments Total :)\s\S+

但结果是空格后的第一个值。

regex command
1个回答
0
投票

你可以使用

(?<=Investments Total :\s\S+\s)\S+

模式匹配:

  • (?<=
    正向后看,断言左边是什么
    • Investments Total :
      按字面意思匹配
    • \s\S+\s
      匹配一个空白字符、1 个以上非空白字符和一个空白字符
  • )
    近距离回顾
  • \S+
    匹配 1 个以上非空白字符

正则表达式演示

© www.soinside.com 2019 - 2024. All rights reserved.