我有以下正则表达式模式:
let pattern = /([^\-\/\*\+]+)/g;
我正在分割数学公式的输入以确保它们有效。
我已在https://www.regextester.com/和https://regex101.com/上对此进行了测试,但它运行正常,但是当我在TypeScript应用程序中运行它时,它无效。假设输入为(income - outgoing) * years working
我希望收到:
["(income ", " outgoing)", " years working"]
但我收到了
["(income ", "(income "]
我没有得到什么?
编辑: 这是运行pattern.exec(str);而不是str.match(模式);一旦交换到str.match(模式);由于@FredG
,它正在按预期工作答案 0 :(得分:1)
似乎有效。您是否尝试过match
功能?
let pattern = /([^\-\/\*\+]+)/g;
const str = "(income - outgoing) * years working";
console.log(str.match(pattern));