вместо if (s == "-") return c1 + a1; надо было if (s == "−") return a1 - c1; того неправильно считал, плюс парсил вместо "-" "−" это исправил.
Еще осталось решить, когда число из одного слова оно его переводит в цифру, когда из двух типа "twenty one" не считает.
В принципе я могу убрать пробелы...