Я пытаюсь создать регулярное выражение для обнаружения операторов без скобок в Javascript из традиционных операторов if.
Я пытаюсь обнаружить операторы, подобные этому:
if (foo) doSomething();
без обнаружения следующего утверждения:
if (foo) {
doSomething();
}
До сих пор я придумал следующее выражение: if(\s*)\(.*\)\s(?!{)
, которое позволяет мне обнаруживать большинство без скобок, если операторы нечувствительны к пробелам между if
и условие.
Однако это выражение также запускается для операторов, подобных следующей причине закрывающей скобки вызова функции:
if (foo()) {
doSomething();
}
Есть ли способ предотвратить это или нет?принципиально невозможно?