function verify(text) { let openingBrackets = ["{", "<", "("]; let closingBrackets = ["}", ">", ")"]; let valid = true; let rgxp = null; for(let i=0,l=openingBrackets.length; i<l; i+=1) { if (text.indexOf(openingBrackets[i]) > -1 || text.indexOf(closingBrackets[i]) > -1) { rgxp = eval("new RegExp(/\\"+ openingBrackets[i] +"(.)*\\"+ closingBrackets[i] +"/g)"); valid = rgxp.test(text); } } return valid; } let testCases = ["{}", "eou{u}", "++<{eu}", "<{>}oeuoeu"]; let resNode = document.getElementById('result'); for (let i=0; i< testCases.length; i+=1) { resNode.appendChild(document.createTextNode(verify(testCases[i])+' ')); }