我有一串代表 3 个不同长度的数字。我需要找出字符串中的第二个长度,但无法找到从匹配中排除空格的方法。这是字符串的示例。点后始终有 6 位数字,但点前的数字有所不同。在这种情况下是907.086614
我需要完全匹配。
1417.322835 907.086614 2.267717
^\s(\d+\.\d{6})
我尝试过不同的外观,但无法让它排除空白。
潜在的副作用\s
是它匹配回车符。
错误匹配示例 https://regex101.com/r/aY1kR9/5
由于您正在寻找一组浮点数的第二列,因此最好明确:
\d[ \t](\d+\.\d+)[ \t]\d
^ trailing digit from first col
^ a single space or tab
^ ^ ^ capture float
^ single space or tab
^ leading digit of third col
Demo https://regex101.com/r/vS8nW7/1
您还可以将捕获置于前瞻和后瞻之间:
(?<=\d[ \t])(\d+\.\d+)(?=[ \t]\d)
Demo https://regex101.com/r/vS8nW7/2
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)