Сложное регулярное выражение в JavaScript

У меня такая задача: суммировать все числа в строке и выполнить умножение

input: "3 chairs, 2 tables, 2*3 forks"
result: 11

У меня уже есть регулярное выражение для этого:

eval(str.match(/(\d[\d\.\*]*)/g).join(' + '))

Но я хочу добавить опцию игнорирования чисел внутри скобок "()"

input: "2 chairs, 3 tables (1 broke)"
result: 5

Как это сделать?

Регулярные выражения всегда были болью для меня :(

5
задан bobbymcr 30 November 2011 в 04:59
поделиться