C#文本框的文本,正则表达式约束,正整数和小数点后只有一位小数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#文本框的文本,正则表达式约束,正整数和小数点后只有一位小数相关的知识,希望对你有一定的参考价值。

我想实现的是,文本中的数只能为正整数或者为正小数但小数点后最多一位(也就是精度控制);例如:20,25.3,100.5,但是不能出现30.52,已经有两位小数了

参考技术A decimal.Parse(30.52,1)

不谢

追问

谢谢

参考技术B string.Format("0:0.0",数字变量名);
请搜索格式化数字。追问

谢谢

本回答被提问者采纳
参考技术C /(^\num$)|(^[0-9]+.[0-9]?$)/追问

谢谢

追答

改了下。好像那个匹配1个数字有问题。/(^[0-9]+$)|(^[0-9]+.[0-9]?$)/ 这个没问题了

参考技术D "^[0-9]+(.[0-9]1)?$"追问

谢谢

怎么让输入框只能输入数字和小数点?

我用 <input onKeyPress="if (event.keyCode!=46 && (event.keyCode<48 || event.keyCode>57)) event.returnValue=false"> 这个属性来控制输入框 汉字还是能被输入,尽量使用输入框的属性使不能输入 不要引发事件 有没有好的方法

有时需要限制文本框输入内容的类型,本节分享下正则表达式限制文本框只能输入数字、小数点、英文字母、汉字等代码。

例如,输入大于0的正整数

1、文本框只能输入数字代码(小数点也不能输入)

2、只能输入数字,能输小数点

3、数字和小数点方法二

4、封装成单独的函数:

只需在调用,传入this对象即可

5、小数点后只能有最多两位(数字、中文都可输入),不能输入字母和运算符号

6、小数点后只能有最多两位(数字、字母,中文都可输入),可以输入运算符号

参考技术A 限制文本框只能输入正数,负数,小数
onkeyup="value=value.replace(/[^\-?\d.]/g,'')"

限制文本框只能输入正数,小数
onkeyup="value=value.replace(/[^\d.]/g,'')"本回答被提问者采纳
参考技术B //只能输入数字,最多两位小数。 首位不能输入0;
$("#inp2").keydown(function(e)
let keyCode = e.keyCode;
if((keyCode >= 48 && keyCode <= 57 || keyCode === 190 || keyCode === 8) && !(!$("#inp2").val() && e.keyCode === 48))
let num = ($("#inp2").val() + "" + e.key);
if(/^[0-9]+(.[0-9]0,2)?$/.test(num))
else
if(e.keyCode === 8)
return;

e.preventDefault();

else
e.preventDefault();

);
//只能输入数字,最多两位小数。 首位可以输入0;
$("#inp1").keydown(function(e)
// 0 keyCode 48 9 keyCode 57 . keyCode 190 删除 keyCode 8
let keyCode = e.keyCode;
if(keyCode >= 48 && keyCode <= 57 || keyCode === 190 || keyCode === 8)
let num = ($("#inp1").val() + "" + e.key);
if(/^[0-9]+(.[0-9]0,2)?$/.test(num))
else
if(e.keyCode === 8)
return;

e.preventDefault();

else
e.preventDefault();

);
参考技术C jquery + 正则表达式

以上是关于C#文本框的文本,正则表达式约束,正整数和小数点后只有一位小数的主要内容,如果未能解决你的问题,请参考以下文章

关于文本框的正则表达式,只能输入正数,可以有小数点,小数点后面两位。

c#中如何判断文本框中是不是是数字(包括小数)

js验证文本框只能输入正整数或带一位小数的数,该怎么写呢?

怎么让输入框只能输入数字和小数点?

C# 中整数或小数(10,2)的正则表达式

在C#中怎么用正则表达式限制文本框内不能输入数字?