小练习2

2017-08-16  本文已影响0人  lx_smile
1, 判断字符串组成:第一个必须是字母,后面可以是字母、数字、下划线,总长度为5-20。
  • \w 匹配包括下划线的任何单词字符。等价于“[A-Za-z0-9_]”
  • [a-zA-Z] 表示匹配26个字母不区分大小写。
  • ^n量词匹配任何开头为 n 的字符串。
  • n$ 量词匹配任何结尾为 n 的字符串。
  • n{X,Y} 量词匹配包含至少 X 最多Y 个 n 的序列的字符串,X 和 Y 必须是数字。
var re = /^[a-zA-Z]\w{4,19}$/;
var result = re.test("aaa_12345");
console.log(result);        //true
2.截取字符串abcdefg的efg.
  • substr() 方法可在字符串中抽取从 start 下标开始的指定数目的字符。它的语法是:stringObject.substr(start,length)
  • indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。它的语法是:stringObject.indexOf(searchvalue,fromindex)
  • test() 方法用于检测一个字符串是否匹配某个模式.它的语法:RegExpObject.test(string)
var str = "abcdefg";
        if (/efg/.test(str)){ 
        var efg = str.substr(str.indexOf("efg"),3); 
        console.log(efg); 
    }
var str = "abcdefg";
var result  = str.substring(4);
console.log(result);
3.判断一个字符串中出现次数最多的字符,统计这个次数。
var str = 'aabbccddd';
         var obj = {};         
         for (var i = 0; i < str.length; i++) {
             if (obj[str[i]]) {
                 obj[str[i]]++
             }
             else {
                 obj[str[i]] = 1;
             }
         }
var flag=0;
         for (item in obj) {
             if (flag < obj[item]) {
                 flag = obj[item];
                 key = item;
             }
         }
console.log(key,obj[key]);     // "d",3
上一篇 下一篇

猜你喜欢

热点阅读