float的正则表达式以区分日期

时间:2014-12-15 17:11:38

标签: regex floating-point numbers

我需要在文本中检测浮点数。我研究了很多解决方案,但都不适合我的情况。我在文中有数字:

.34

0.34

23.54

但我也有格式的日期:dd.mm.yyyy

问题是许多解决方案也会将文本中的日期检测为浮点数。在最后我需要在文本中用逗号代替数字,而不是日期

2 个答案:

答案 0 :(得分:2)

您可以使用(?<= )(\d+)?\.(\d+)?(?= )。使用look-around来匹配2个空格之间的浮点数!

DEMO

答案 1 :(得分:1)

尝试(?<=^| )\d+(\.\d+)?(?=$| )仅匹配浮点数。它不应与日期编号匹配。