Skip welcome & menu and move to editor
Welcome to JS Bin
Load cached copy from
 
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>JS Bin</title>
</head>
<body>
</body>
</html>
 
var str = "87b86156d0970a4200005e02612f56614f7a2f54f7ebf45670ed62cbaa78e6f228297b0e7338215fb4";
var grabLength = 4,
    // 4-char strings
    grp1 = [],
    // 2-char strings
    grp2 = [],
    chunk;
while(chunk = str.slice(0, grabLength)) {
  str = str.slice(grabLength);
  
  // skip all zeros
  if (/^0+$/.test(chunk)) continue;
  
  if (grabLength === 4) {
    if (grp1.push(chunk) === 5) {
      grabLength = 2;
    }
    continue;
  }
  
  // skip 2-char sequences that match the start of a 4-char sequence
  var hasMatch = false;
  for (var i = 0; i < grp1.length; i++) {
    if (chunk === grp1[i].slice(0, 2)) {
      hasMatch = true;
      continue;
    }
  }
  if (hasMatch) continue;
  
  grp2.push(chunk);
  
  if (grp2.length === 2) break;
}
console.log(grp1);
console.log(grp2);
Output

This bin was created anonymously and its free preview time has expired (learn why). — Get a free unrestricted account

Dismiss x
public
Bin info
anonymouspro
0viewers