0
点赞
收藏
分享

微信扫一扫

js正则表达式笔试题

1 . 给一个连字符串例如:get-element-by-id转化成驼峰形式。

var str = "get-element-by-id";
var reg = /-\w/g; // 匹配横杆以及之后的一个字符,全局匹配
console.log(str.replace(reg,function($0){
return $0.slice(1).toUpperCase();
// 匹配到到是-e -b -i 形式截取后一个字符转成大写
}));
  1. 匹配二进制数字
 var str = "10101111";
var reg = /^(0|1)+$/g;
// var reg = /^[01]+$/g;
console.log(reg.test(str));

3.非零的十进制数字 (有至少一位数字, 但是不能以0开头)

 // 非零的十进制数字 (有至少一位数字, 但是不能以0开头)
var str = "99";
var reg = /^[1-9][0-9]*$/g;
console.log(reg.test(str));

4、匹配qq号最长为13为

 // 匹配qq号最长为13为
var str = "1234567890123";//13位
var reg = /^[1-9][0-9]{4,12}$/g;//QQ最低是5位 最高是13位
console.log(reg.test(str));

5、匹配ip地址

    var str = "255.221.221.12";
// [01]?\d\d?表示匹配小于199的数,可以说两位数或一位数,2[0-4]\d表示从200到249,配合25[0-5]就表示小于255的数了。
var reg = /(([01]?\d\d?|2[0-4]\d|25[0-5])\.){3}([01]?\d\d?|2[0-4]\d|25[0-5])/g;
console.log(str.match(reg));

6、匹配整数或者小数(包括正数和负数)

  -?\d+(\.\d+)?

-?表示-匹配0次或一次,\d表示整数,+表示匹配一次或多次,(\.\d+)?表示小数

7、匹配年月日日期 格式2018-12-6

^[1-9]\d{0,3}-(1[0-2]|0?[1-9])-(3[01]|[12]\d|0?[1-9])$
举报

相关推荐

0 条评论