JS 正则表达式解题:用科学计数法表示数字
2020-07-14 05:52
806 查看
题目:给定字符串 str = “1000000000”,用科学计数法表示该式(效果为:1,000,000,000)
正则表达式用来匹配特殊字符,在此题中可以考虑:从字符串的末位开始,每当位数是三的倍数,则添加一个逗号。
思路:
- 从字符串末位开始匹配 --> 以$结尾表示匹配输入结束前的位置
var reg =/...$/
- 位数为3的倍数 --> 表示长度为三且内容为[0-9]区间内的数字,出现次数未知,加上"+",表示匹配前面表达式[1-infinity]次
reg = /(\d{3})+/
- 添加"," --> 将空串替换为逗号
>str.replace(reg, ",")
- 注意:若字符串长度刚好为三的倍数,以上方式会在字符串前面加上逗号,为避免这种情况,可以通过匹配非单词边界来过滤
reg = /(\B)(\d{3}+$)/
- 给数字添加逗号,我们要匹配的是到末位位数为3的倍数的空串,将其替换为逗号,因此,上面的匹配属于先行断言的条件。即:匹配后面字符为 / r(\B)(\d{3}+4) / 模式的空串,再加上全局范围
reg = / ?=(\B)(\d{3}+$) /g
最终代码如下:
var str = "1000000000"; var reg = /(?=(\B)(\d{3})+$)/g; console.log(str.replace(reg, ","));
相关文章推荐
- JS只能输入数字,数字和字母等的正则表达式
- JS正则表达式验证数字
- 转 一些关于js与jquery的数字类型验证正则表达式代码
- JS只能输入数字,数字和字母等的正则表达式
- js正则表达式限制文本框只能输入数字,小数点,英文字母,汉字等各类代码
- js正则表达式 数字和小数点 非负数 保留两位小数点
- JS只能输入数字,数字和字母等的正则表达式
- js验证数字正则表达式
- js正则表达式提取字符串中的数字
- jquery和js验证数字类型的正则表达式
- JS正则表达式验证数字,整数,email
- js正则表达式-4个数字之间相隔空格
- js限制文本框只能输入数字(正则表达式)
- js验证数字正则表达式
- JS 用正则表达式,验证密码包含数字和字母的方法
- js各类正则表达式(中文、字母、数字、全角)
- JS正则表达式是否有字母数字特殊字符+strpos用法
- JS正则表达式验证数字非常全
- JS正则表达式验证数字
- JS 文本框校验--限制文本框只能输入数字,数字和字母等的正则表达式