正则练习题

前言

我们在上次说到了一些关于正则表达式的基本知识,然后学啥东西都一样,要会用,不然干看着概念,就算你厉害把所有的知识点都背下来了,但是一段时间不看就会忘记了,所以咧,还是要找一点题练一下,这次的话就随便找了几道我做项目的时候做的正则的题型,权当复习吧
邮箱校验

要求:能够识别判断当前使用比较多的免费邮箱,企业邮箱不熟,以后再考虑

1
2
3
4
let demo = "123@qq.com";
let pataern = /^[a-zA-Z0-9_.]+@[a-zA-Z0-9-]+(\.[a-zA-Z0-9]+)*\.[a-zA-Z0-9]{2,6}/;
let res = pataern.test(demo);
console.log(res);//true

账户姓名校验

要求:1-n个以字母开头的字符串

1
2
3
4
5
6
7
8
9
10
const n = 5;
let user1 = 'ssh';
let user2 = '1word';
function UserName(user) {
let reg = /^[a-zA-Z][a-zA-Z0-9_]{0,4}$/;
let result = reg.test(user);
return result;
}
console.log(UserName(user1));//true
console.log(UserName(user2));//false

密码校验

要求:6-12字母、数字、下划线

1
2
3
4
5
6
7
8
9
let pwd1 = 's';
let pwd2 = '1_word';
function Password(pwd) {
let reg = /[a-zA-Z0-9_]{6,12}$/;
let result = reg.test(pwd);
return result;
}
console.log(Password(pwd1));//false
console.log(Password(pwd2));//true

格式化金额

要求:将数字转换为形如¥2,000.12的形式

1
let

获取金额中的有效数字

要求:将¥2,000.20中的有效数字提取出来,如2000.2

1
2
3
4
5
6
7
8
9
let str = `CNY 1,000.0`;
function tiqu(str){
let reg = /[^0-9\.]/g;//去掉货币符号和逗号
str = str.replace(reg,'');
str = parseFloat(str);//如果去掉无效的小数数据
return str;
}
let res = tiqu(str);
console.log(res);



----------- 本文结束 -----------




小红帽 wechat
想看更多文章,那就订阅我的微信公众号吧
如果觉得我的文章对你有很大帮助的话,请我喝杯奶茶吧~(@^_^@)~