我正在尝试创建一个正则表达式,以从传统的if语句中检测Javascript中的无括号if语句。
我正在尝试检测这样的语句:
if (foo) doSomething();
未检测到以下语句:
if (foo) {
doSomething();
}
到目前为止,我想出了以下表达式:if(\s*)\(.*\)\s(?!{)
,它使我能够检测到大多数对if
和条件之间的空格不敏感的if语句。
但是,由于以下原因(例如由于函数调用的右括号引起的),该表达式也会被语句触发:
if (foo()) {
doSomething();
}
总有办法防止这种情况的发生,或者从根本上说这是不可能的吗?