javascript - 这个正则表达式与我认为应该匹配的东西不匹配

标签 javascript regex

我的网络应用程序中有一个字段,用户需要在其中输入一个或多个数字,并用一个或多个句点分隔。

以下是用户可能输入的内容的典型示例:

589327498321.43243214.32421423。

我编写了以下 JavaScript 代码来测试值:

var uid = $(this).val();
var uidRegex = /(^\d|\.$)+/;
var isValid = uidRegex.test(uid);

我得到了错误的结果。这段代码似乎告诉我,如果用户的条目以数字或句点开头,则该条目有效。如何解决此问题,以便整个条目必须仅包含数字和句点才有效?

最佳答案

听起来您正在寻找的模式是

Number followed by any number dot + number sequences

如果是这样,请尝试以下/^(\d)+(\d|\.\d)+$/

编辑

OP在评论中指出连续的点是合法的。这是更新的正则表达式来解释这一点 /^(\d)+(\d|\.)+$/

关于javascript - 这个正则表达式与我认为应该匹配的东西不匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7474658/

相关文章:

PHP: preg_replace (x) 发生?

javascript - 下拉列表中的 Bootstrap 搜索表单

javascript - 页面加载后第一个锚定链接需要单击两次

javascript - ExtJS 4.1 中发送参数

javascript - 如何将选定的值从 select 获取到另一个组件?

Python 使用替换函数进行替换

javascript - SailsJs - 覆盖 Controller 默认方法

PHP 正则表达式主题标签和特殊字符

python - 在 Python 中搜索两个复杂的正则表达式模式之一而不创建子匹配

regex - url 中存在空格的 mod 重写问题