javascript - 如何使用正则表达式来表示 18-99 之间的整数范围?

标签 javascript regex integer range

我正在尝试为 Google 表单创建 JavaScript 正则表达式,以验证与年龄相关的问题的答案。我希望用户只能输入 18 到 99 之间的整数值。

这些值必须仅为数字,不能以零开头、为负数或包含小数。它们只能是正整数。

我对正则表达式很陌生,这是我最好的尝试。

(1[89]|[2-9][0-9])

\d(1[89]|[2-9][0-9])

第一次尝试会将答案保持在我的范围内(18 到 99),但它允许带有小数、前面的零甚至尾随字母的值。

regEx1

当我使用\d 时的第二次尝试,它似乎只接受以零开头的值,尽管它们包含小数或尾随字母。

regEx2

最佳答案

然后你可以像这样创建一个捕获组;

^(1[89]|[2-9][0-9])$

https://regex101.com/r/m2icLR/1

关于javascript - 如何使用正则表达式来表示 18-99 之间的整数范围?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55852232/

相关文章:

javascript - 下划线 - 基于值定位节点

c++ - 在 C++ 中将 Char 转换为 Int 的问题

javascript - 如何获取数组中所有json键

javascript - 检测输入值是否通过 Enter 按下而不是 onclick 选择

arrays - 如何使用 REGEX 按相同的符号序列拆分字符串?

java - 为什么这个正则表达式不匹配?

java - Java如何处理正则表达式?

c - 将整数打印为字符数字(无数组/printf/等...)

javascript - 大整数的位运算

javascript - React 和 Redux 架构问题