JS正则表达式实现:限制输入为数字
3星 · 超过75%的资源 需积分: 50 196 浏览量
更新于2024-07-27
收藏 47KB DOC 举报
本文主要介绍如何使用JavaScript正则表达式来限制文本框(input)只能输入特定类型的数字。在网页表单中,我们常常需要对用户输入进行验证,确保数据的正确性和格式的一致性。以下是一些针对不同数字类型的正则表达式:
1. 非负整数(包括0):
```javascript
/^\d+$/
```
这个正则表达式会匹配所有非负整数,即0和所有正整数。
2. 正整数:
```javascript
/^[0-9]*[1-9][0-9]*$/
```
它会确保至少包含一个大于0的数字在数字串中。
3. 非正整数(包括负整数和0):
```javascript
/^((-\d+)|(0+))$/
```
这个正则允许输入负整数或零,但不允许正整数。
4. 负整数:
```javascript
/^-[0-9]*[1-9][0-9]*$/
```
只允许输入负整数,且至少包含一个大于0的数字。
5. 整数(包括正负整数和0):
```javascript
/^-\?\d+$/
```
允许输入正整数、负整数和0。
6. 非负浮点数(包括0):
```javascript
/^\d+(\.\d+)?$/
```
匹配所有非负浮点数,包括0和正浮点数。
7. 正浮点数:
```javascript
/^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$/
```
这个正则确保至少有一个小数部分,并且小数部分不全是0。
8. 非正浮点数(包括负浮点数和0):
```javascript
/^((-\d+(\.\d+)?)|(0+(\.0+)?))$/
```
包括负浮点数和0,不允许正浮点数。
9. 负浮点数:
```javascript
/^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$/
```
只允许输入负浮点数。
10. 浮点数(包括正负整数和0):
```javascript
/^(-?\d+)(\.\d+)?$/
```
匹配所有浮点数,包括正负和0。
除此之外,正则表达式还可以用于验证其他类型的字符串:
11. 由26个英文字母组成的字符串:
```javascript
/^[A-Za-z]+$/
```
12. 由26个大写英文字母组成的字符串:
```javascript
/^[A-Z]+$/
```
13. 由26个小写英文字母组成的字符串:
```javascript
/^[a-z]+$/
```
14. 由数字和26个英文字母组成的字符串:
```javascript
/^[A-Za-z0-9]+$/
```
15. 由数字、26个英文字母或下划线组成的字符串:
```javascript
/^\w+$/
```
16. 邮箱地址的验证:
```javascript
/^[\\w-]+(\\.[\\w-]+)*@\\w-+(\\.[\\w-]+)+$/
```
17. URL的验证:
```javascript
/^[a-zA-z]+:\/\/(\\w+(-\\w+)*)(\\.(\\w+(-\\w+)*))*(\\?\\S*)?$/
```
18. 仅包含字母、数字和下划线的字符串:
```javascript
/^[A-Za-z0-9_]*$/
```
在JavaScript中,可以将这些正则表达式与`test()`方法结合使用,来验证用户输入是否符合指定的格式。例如,如果你要限制用户输入非负整数,可以在输入事件中使用如下代码:
```javascript
function checkInput(event) {
const input = event.target.value;
const pattern = /^\d+$/;
if (!pattern.test(input)) {
alert('请输入非负整数');
event.preventDefault(); // 阻止默认行为,如提交表单
}
}
```
这段代码会在用户尝试输入不符合正则表达式的字符时给出提示,并阻止非法输入。将这个`checkInput`函数绑定到你的文本框元素上,即可实现输入限制。
2021-01-19 上传
点击了解资源详情
2020-10-29 上传
2020-12-10 上传
2022-01-21 上传
点击了解资源详情
2021-11-06 上传
TomCatB
- 粉丝: 0
- 资源: 1
最新资源
- os-client-config:客户端库和程序的统一配置处理。 在opendev.org上维护的代码镜像
- wasm_education
- dan_lian_biao.rar_链式存储
- hue-dashboard:色相仪表板
- ISATermProject
- 基于ssm汽车租赁系统.zip
- ysa-map-tool:一个允许您将标记位置保存在JSON文件中的Web应用程序
- N76E003 Demo_v1_新唐单片机测试激光模块_N76E003IIC_n76e003iic_新唐_N76E003AT20
- VB.Programming.software.uninstall.module.code.rar_VB_卸载模块
- 基于ASP.NET开发的网上人才招聘系统(源代码+论文).rar
- Force-Directed-Graph-Layout:基于力导向算法的绘图仪应用
- 天气预报收集java爬虫.zip
- FLL-Tournament-Software:该存储库用于 FLL 锦标赛软件的使用和讨论
- js-problems:with使用自动系统检查JavaScript解决方案的俄语问题集
- -:科技高中网页
- Panteon-Project