Разделить строку по точкам, игнорируя контент внутри скобок ()
Хорошего настроения и продуктивного дня, помогите пожалуйста, нужно разделить строку str используя регулярные выражения и не затрагивая то, что находится в скобках.
const str = scope.bot.api(https://api.mathjs.org/v4/?expr=2*(7-3));
// ожидаемый input ['scope', 'bot', 'api(https://api.mathjs.org/v4/?expr=2*(7-3))' ]
Так же выражение не должны ломать скобки внутри скобок как тут - "(7-3)'
Заранее большое спасибо за любую помощь :)
Ответы (1 шт):
Автор решения: UModeL
→ Ссылка
let rExp = /(api\(.+\))$|([a-z]+)(?!=[(])/gim;
let sStr = 'scope.bot.api(https://api.mathjs.org/v4/?expr=2*(7-3))';
console.log(sStr.match(rExp));