Here you can find the source of scan(re)
String.prototype.scan = function (re) { if (!re.global) throw "RegExp should be global"; var s = this; var m, r = []; while (m = re.exec(s)) { m.shift();/*from w ww .j a v a2 s. c om*/ r.push(m); } return r; };
String.prototype.scan = function(pattern){ if (Object.isString(pattern)) pattern = RegExp.escape(pattern); return this.match(pattern); };
String.prototype.scan = function(pattern, iterator) { this.gsub(pattern, iterator); return String(this); };
String.prototype.scan = function (regex) { if (!regex.global) throw "Scan Error"; var self = this; var match, occurrences = []; while (match = regex.exec(self)) { match.shift(); occurrences.push(match[0]); return occurrences; ...