javascript - How can I exclude "[" and "]" in a match like "[abc]"? -


i have following string:

[a] [abc] test [zzzz] 

i'm trying array so:

[0] => [1] => abc [2] => zzzz 

i've tried following code:

var string = '[a] [abc] test [zzzz]'; var matches = string.match(/\[(.*?)\]/g); for(var = 0; < matches.length; i++)     console.log(matches[i]); 

but console output shows:

[a] [abc] [zzzz] 

i tried adding 2 non-capturing groups (?:), so:

var matches = string.match(/(?:\[)(.*?)(?:\])/g); 

but see same matches, unchanged.

what's going wrong, , how can array want?

match doesn't capture groups in global matches. made little helper purpose.

string.prototype.gmatch = function(regex) {   var result = [];   this.replace(regex, function() {     var matches = [].slice.call(arguments,1,-2);     result.push.apply(result, matches);   });   return result; }; 

and use like:

var matches = string.gmatch(/\[(.*?)\])/g); 

Comments

Popular posts from this blog

SPSS keyboard combination alters encoding -

Add new record to the table by click on the button in Microsoft Access -

CSS3 Transition to highlight new elements created in JQuery -