price: function(value, item) { //value:表单的值、item:表单的DOM对象
if (!new RegExp("(^$)|^[1-9][0-9]*+(.?[0-9]{1,3})?$").test(value)) {
return '请输入正数,且小数点后最多保留3位,可空';
point: function(value, item) { //value:表单的值、item:表单的DOM对象
if (!new RegExp("((^[1-9][0-9]{0,8})+(.?[0-9]{1,3})?$)|(^[0]+(.[0-9]{1,3})?$)").test(value)) {
//if (!new RegExp("^[\\+\\-]?[\\d]+(\\.[\\d]{1,3})?$").test(value)) {
return '请输入正数,且小数点后最多保留3位,整数位最多9位';
2、最多两位整数,且小数点后最多保留2位
//自定义验证
form.verify({
name: [
/^[\u4e00-\u9fa5_a-zA-Z0-9_]{1,20}$/, '长度不能大于20位且不包含特殊字符'
scale: function(value, item) { //value:表单的值、item:表单的DOM对象
console.log(value)
if (!new RegExp("(^[0-9]$)|(^[1-9][0-9]$)|(^[0-9]{1}[\.]{1}[0-9]{1,2}$)|(^[1-9][0-9][\.]{1}[0-9]{1,2}$)").test(value)) {
// if (!new RegExp("(^$)|^[0-9]{1,2}+(.?[0-9]{1,3})?$").test(value)) {
return '请输入最多两位整数,且小数点后最多保留2位';
3、1-99999999之间的数
form.verify({
num: function(value, item) { //value:表单的值、item:表单的DOM对象
console.log(value)
if (!new RegExp("^[1-9][0-9]{0,7}$").test(value)) {
return '请输入1-99999999之间的正确金额';
layui 中加js正则表达式验证1、正数,且最多3位小数//自定义验证 form.verify({ price: function(value, item) { //value:表单的值、item:表单的DOM对象 if (!new RegExp("(^$)|^[0-9]+(.?[0-9]{1,3})?$").test(value)) { //if (!new RegExp("^[\\+\\-]?[\\d]+(\
我们在做表单输入时,有时候对于有些输入比较有限制,比如输入天数必须为正整数,再比如有些特殊需求需要输入保留小数点的后面n位。那么我们如何在输入环节就限制用户的输入情况呢?
我们可以用正则表达式来限制。
限制input输入数字只能输入正整数(包括0)
<input type="number" class="weight-input" ...
匹配到:2.2,2.02,2.222
解释:第一个加号前是整数部分,后面非0结尾好像必须用[^0]$吧?有没有大神,请教一下其他写法.最多3位就{1,2},加上后面的非0即可.
m-n位的数字:^\d{m,n}$
零和非零开头的数字:^(0|[1-9][0-9]*)$
非零开头的最多带两位小数的数字:^([1-9][0-9]*)+(\.[0-9]{1,2})?$
带1-2位小数的正数或负数:^(\-)?\d+(\.\d{1,2})$
正数、负数、和小数:^(\-|\+)?\d+(\.\d+)?$
有两位小数的正实数:^[0-9]+(\.[0-9]{2})?$
网上找了很多的正则表达式,很多都是错的,还是得自己写自己改良,这里根据自己项目中的需求,写了两个正则,供大家参考:
必须是正整数或小数,小数点后保留三位,输入整数不超过13位,小数不超过10位
/^-?(?:0.\d{0,3}|[1-9][0-9]{0,12}|[0-9]{1,10}.\d{0,3})$/
必须是整数或小数,小数点后保留4位,整数位不超过12位
两种写法:
<el-input onkeyup="value=value.replace(/[^\d.]/g, '').
$(function(){
var data = $.trim($("#inputId").val());
//此正则表达式验证小数位是否超过两位,小数可为1位 || 2位 || 整数
if(!(/^\d+(\.\d{1,2})?$/.test(data ) || /^\d$/.test(data ) )){
alert("输入金额格式不对!最高精确到分");
return ;
//写入对应位置
$(".htmlTextClass").innerText(toDecimal2(data ));
//强制小数位保留方法
function toDecim
验证整数和小数的正则表达式
网上很多关于验证小数的正则表达式,但是很多都不是百分百正确,所以我结合一些前辈的经验,自己写了一个。
验证非0开头的无限位整数和小数。整数支持无限位,小数点前支持无限位,小数点后最多保留两位。
js代码如下:
var reg = /^(([^0][0-9]+|0)\.([0-9]{1,2})$)|^([^0][0-9]+|0)$/;
单独拆分:
1. 整数:/^([^0][0-9]+|0)$/
2. 小数:/^(([^0][0-9]+|0)\.([0-9]{1,2}))$/
根据需求可更改:
1. 若更改小数点前限制位数,则更改 +
以上所述是小编给大家介绍的Python正则表达式匹配数字和小数的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对软件开发网网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
您可能感兴趣的文章:Python 正则表达式匹配数字及字符串中的纯数字python字符串中匹配数字的正则表达式python正则表达式去掉数字中的逗号(pyt
网上太多了,但是错误的太多,只能自己去写。
^[1-9]\d{0,7}(\.\d{1,3})?$|^0(\.\d{1,3})?$ 允许输入整数8位,小数3位的金额!不能输入0开头的整数,如:0100
^ 匹配字符串的开始
[1-9] [ ] 表示区间,表示找到一个位置上的字符只能是1到9这四个数字
\d 匹配数字
{0,7} { ...
其中 `^` 表示匹配字符串的开头,`$` 表示匹配字符串的结尾,`|` 表示或者的意思。正则表达式的意思是:
- 匹配 `1-9` 之间的数字一到两个,后面跟一个 `.`,再跟上最多三位数字;或者
- 匹配 `0`,后面跟一个 `.`,再跟上最多三位数字。
例如,`1.00`、`10.123`、`99.000`、`0.123` 都是符合要求的字符串,`1.0000`、`100.123`、`00.123` 都不符合要求。