正则表达式包含小数

正则表达式包含小数
(\d+)[^0-9]+(\d+)[^1-9]+(\d+)

上面的表达式可以识别三组连续的整数。那么它如何识别小数呢?

例如:

234.34 x 455.44 x 455.33

结果:

(1) 234.34 (2)  455.44 (3) 455.33

答案1

如果总是有 3 组,则使用:

(\d+(?:\.\d+)?)\D+(\d+(?:\.\d+)?)\D+(\d+(?:\.\d+)?)

这将匹配 3 组浮点数/整数。

扩展:

(               # start group 1
    \d+         # 1 or more digits
    (?:         # start non capture group
        \.      # dot
        \d+     # 1 or more digits
    )?          # end group, optional
)               # end group 1
\D+             # 1 or more non digits

对于正则表达式的其余部分的解释相同。

如果只想匹配浮点数(而不是整数),请使用:(\d+\.\d+)\D+(\d+\.\d+)\D+(\d+\.\d+)

演示

相关内容