匹配Javascript代码语句的结尾

时间:2012-12-06 15:46:49

标签: javascript regex

我想处理/解析和更改一些Javascript代码,最好是在正则表达式中,如果可能的话(对建议开放)。目的是在JS中的每个语句之后插入一个新的代码片段。

例如:

原始Javascript:

while(true){

    Utils.log("hello world");
    Utils.sleep(1000);

}

我想插入的代码段:

checkPause();

所以新代码看起来像这样:

while(true){

    checkPause();
    Utils.log("hello world");
    checkPause();
    Utils.sleep(1000);
    checkPause();

}
checkPause();

上面的例子非常简单,但真正的JS代码可能更复杂,甚至可能缩小。代码也可能会遗漏一些分号;

1 个答案:

答案 0 :(得分:1)

执行此操作的一种非常脏的方法是在每个左括号,右括号和分号后插入代码段。像这样:

 code.replace(/\;/g, '; checkPause(); ').replace(/\{/g, '{ checkPause(); ').replace(/\}/g, '} checkPause(); ')

正确的方法是使用解析器。