459.重复的子字符串

2020-05-12
重复的子字符串

给定一个非空的字符串,判断它是否可以由它的一个子串重复多次构成。给定

的字符串只含有小写英文字母,并且长度不超过10000。

题解:
思路1:以特殊字符打散字符串成数组
var repeatedSubstringPattern = function (s) {
  if(s.length < 2) return false;
  let tmp = '';
  for (let i = 0; i < s.length / 2; i++) {
    tmp += s[i]; // tmp记录0-i的子串
    if (!s.split(tmp).join('')) return true; // 以tmp打散字符串 如果全部符合 那么应该被打散一个数组 每一项都是空字符串
  }
  return false;
};

 

思路2:正则匹配
var repeatedSubstringPattern = function (s) {
  return /^(\w)\1+$/.test(s); // 正则匹配 \1 表示 重复第一个括号的内容
};

 

posted @ 2020-05-12 13:19  蓝小胖纸  阅读(129)  评论(0编辑  收藏  举报