正则表达式 - 表单验证中的空字段

时间:2013-04-11 20:02:43

标签: javascript regex validation

我有一个现有的正则表达式:

/^(\d*)(\.(\d*))?$|^$/

如何添加/修改空字段 - (\ s *)的检查? - 尝试学习正则表达式,进行搜索但没有找到合适的资源。

3 个答案:

答案 0 :(得分:0)

首先,您的|^$部分是多余的。但是如果你试图禁止空场,你可以尝试这样做:

/^\d*\.?\d+$/

如果你想在开头和结尾忽略空格,试试这个:

/^\s*\d*\.?\d+\s*$/

你的措辞有点不清楚,所以请告诉我这不是你想要做的。

答案 1 :(得分:0)

所以你的正则表达式说:

  

从头开始匹配 - ^ - 零或更多数字 - \ d * - ,可能后跟一个点和零或更多数字 - (。(\ d *))? - 没有任何东西 - $,字符串结尾。或者 - | - 匹配字符串的开头,后跟字符串的结尾 - ^ $ - 。

你需要修改它的最后一部分。而不是^$,您可以匹配^\s*$,即“匹配字符串的开头,后跟零个或多个空格,以及字符串的结尾” 。因此它匹配前一个条件(零空格意味着从开头到结尾)和新条件 - 带有一些空格。

希望有助于更好地理解正则表达式。不幸的是,我不知道RegExp的任何好资源,我只使用MDN

答案 2 :(得分:0)

您是否尝试过使用www.debuggex.com来帮助您使用正则表达式?我认为这是你正在寻找的正则表达式:

^(?:(\d*)(?:\.(\d*))?|\s*)$

它将匹配浮点数或某些空格。请注意,浮点数可以奇怪地格式化。例如,0000.10将匹配。