我很好奇找到美元的正则表达式。我的输入和规则是只能有数字 0 到 9 和可选的小数点。如果小数存在,它后面必须有两个 0 t 9 位。
所以它可以除外:1000 1000.99
但不是:10001.1 1000. 1,000 $100.9
你知道正则表达式吗?让我解释一下解决方案:
1)你想要数字,那些是[0-9]
2)您至少想要其中一个,即+
3)那么可能有东西,我们把它放在括号里,0或1次表示?
所以你现在有了这个[0-9]+(something)?
4)现在你想要一些小数点,点是正则表达式中的特殊字符,所以你必须转义它\.
5)然后你又想要数字,正好是其中的两个{2}
你在这里,完整的表达:
$expression="/[0-9]+(\.[0-9]{2})?/";
干得好:
/^[0-9]+(?:\.[0-9]{2}){0,1}$/
这将检查任意数量:
/^(?:[0-9]{1,3})(?:,[0-9]{3})*(?:|\.[0-9]+)$/
例如,它将验证:
1,432.33
342
1.2
0.343