正则表达式小数详解

发布时间:2023-05-18

一、正则表达式小数前最多三位数

小数前面最多可以有3位数字,可以使用\d{0,3}来匹配。其中\d表示匹配任意数字,{0,3}表示匹配0到3个数字。

const reg = /\d{0,3}\.\d{1,2}/;
const str1 = "0.123";
const str2 = "123.123";
console.log(str1.match(reg)); // ['0.12']
console.log(str2.match(reg)); // ['123.12']

二、正则表达式小数结尾不能为0

小数结尾不能以0结束,可以使用[1-9]的形式匹配第一位为1到9的数字。

const reg = /[1-9]\d*\.\d+/;
const str1 = "12.34";
const str2 = "12.340";
console.log(str1.match(reg)); // ['12.34']
console.log(str2.match(reg)); // null

三、正则表达式小数点

小数点可以使用\.进行匹配。

const reg = /\d+\.\d+/;
const str1 = "1.23";
const str2 = "123";
console.log(str1.match(reg)); // ['1.23']
console.log(str2.match(reg)); // null

四、正则表达式小数点后两位

小数点后两位可以使用\d{2}进行匹配。

const reg = /\d+\.\d{2}/;
const str1 = "1.23";
const str2 = "1.234";
console.log(str1.match(reg)); // null
console.log(str2.match(reg)); // ['1.23']

五、正则表达式小数带符号

小数可以带上正负号,可以使用[+\-]?匹配正负号,其中?表示匹配0次或1次。

const reg = /[+\-]?\d+\.\d{2}/;
const str1 = "-1.23";
const str2 = "+1.23";
console.log(str1.match(reg)); // ['-1.23']
console.log(str2.match(reg)); // ['+1.23']

六、正则表达式小数点后2位

小数点后两位可以使用\d{2}进行匹配。

const reg = /\d+\.\d{2}/;
const str1 = "1.23";
const str2 = "1.234";
console.log(str1.match(reg)); // null
console.log(str2.match(reg)); // ['1.23']

七、正则表达式小数如何匹配

小数可以使用\d+\.\d+进行匹配。

const reg = /\d+\.\d+/;
const str1 = "1.23";
const str2 = "-12.3";
console.log(str1.match(reg)); // ['1.23']
console.log(str2.match(reg)); // ['-12.3']

八、正则表达式小数或整数

既能匹配小数,又能匹配整数,可以使用\d+(\.\d+)?进行匹配,其中?表示匹配0次或1次,即小数点和小数部分可以省略。

const reg = /\d+(\.\d+)?/;
const str1 = "1.23";
const str2 = "-12";
console.log(str1.match(reg)); // ['1.23']
console.log(str2.match(reg)); // ['-12']

九、正则表达式小数点后一位

小数点后一位可以使用\d{1}进行匹配。

const reg = /\d+\.\d{1}/;
const str1 = "1.2";
const str2 = "1.23";
console.log(str1.match(reg)); // ['1.2']
console.log(str2.match(reg)); // null

十、正则表达式小数点怎么表示

小数点可以用\.来表示。

const reg = /\d+\.\d+/;
const str1 = "1.23";
const str2 = "123";
console.log(str1.match(reg)); // ['1.23']
console.log(str2.match(reg)); // null