JSFiddle - React, Tailwind, and code Playground
JavaScript
'use strict';
var Bracket = (function(){
var EMPTY_BRACKETS = new RegExp(/(\[\]|\(\)|\{\})/, 'g');
var NOT_BRACKETS = new RegExp(/[^\[\]\(\)\{\}]/, 'g');
var validate = function(str) {
str = str.replace(NOT_BRACKETS, '');
while ( str !== (str=str.replace(EMPTY_BRACKETS, '')) );
return str==="";
};
return {
validate: validate
};
})();
console.log(Bracket.validate("")); // true
console.log(Bracket.validate("()")); // true
console.log(Bracket.validate("()[]")); // true
console.log(Bracket.validate("()[]{}")); // true
console.log(Bracket.validate("()[]{}")); // true
console.log(Bracket.validate("[ ]")); // true
console.log(Bracket.validate("{{[]()}}")); // TRUE
console.log(Bracket.validate("([)]")); // false
console.log(Bracket.validate("]]")); // false
console.log(Bracket.validate("[")); // false