RegEx匹配任何包含“0-9”和“。”的字符串。和“ - ”和“”

时间:2010-05-11 16:13:35

标签: regex

我需要检查文件的每一行是否有以下模式: - 14由不规则数量的空格分隔的数值。 - 值可以是负数( - ),小数分隔符是一个点,后跟最大一位数 - 该行以几个空格结尾

这是一个示例行:

10015 20100501  1    4.6    6.4    8.4   10.5   86.6    4.0   13.0    0.9    6.4    0.0 1007.2                                      

谢谢!

2 个答案:

答案 0 :(得分:5)

这应该这样做:

/^(-?\d+(\.\d)?\s+){14}$/

编辑:由Gumbo添加的开始和结束标记。

答案 1 :(得分:2)

试试这个正则表达式:

/^(-?\d+(\.\d)? +){14}$/m

在多行模式下,^$分别匹配行的开头和结尾。 -?用于可选的减号,\d+(\.\d)?用于带有可选的单个小数位的数字, +(空格加+)用于分隔和尾随空格。然后,该模式恰好重复14次((…){14})。