私はRegExを使い始めます。とにかく私は自分のベストを試してみましたが、私はかなり遠くなったと思いますが、私は私が持っている正確には何がまだ...RegEx関数の名前と文字列のパラメータを変更
ないよ: 私はNode.js.で処理する必要がJavaScriptのソースファイルそのように見ることができます:
var str = "require(test < 123)\n\nrequire(test2 !== test)\n\nfunction(dontReplaceThisParam) {\n console.log(dontReplaceThisParam)\n}";
私が思い付いた:いくつかの問題をTheresの
console.log(str.replace(/\(\s*([^)].+?)\s*\)/g, 'Debug$&, \'error_1\''))
:
- 私は、文字列のエラーがparanthesis内部に入ったことをしたいですそれは第2のパラメータとして働く。
- すべての関数呼び出し、または私はparanthesisのすべてが置き換えられると思います。しかし、 "require(xxx)"への関数呼び出しだけに触れてください。
- 可能な場合にも、エラーコードが何らかの形でインクリメントする必要があり...
だから、 "必要(テスト== 123)" のような文字列は、「requireDebug(テスト== 123 'error_N')に変換する必要があります
requireDebug(test < 123), 'error_1'
requireDebug(test2 !== test), 'error_1'
functionDebug(dontReplaceThisParam), 'error_1' {
console.logDebug(dontReplaceThisParam), 'error_1'
}
私は必要なもの:
... "現在、私のコードが出力します何を必要とする」だけの呼び出し"
requireDebug(test < 123, 'error_1') requireDebug(test2 !== test, 'error_2') function(dontReplaceThisParam) { console.log(dontReplaceThisParam) }
私はこれを手動で行うことができますが、ここでは数百のソースファイルについて話しています。私はまた、このようなことはあまり良いことではないことを知っていますが、require関数内のデバッガが動作していないので、エラーを見つけるためにエラーコードで自分のデバッグ関数を作る必要があります。そのほとんどすべて私が今できること...
何か助けてくれてありがとうございます!
聖なる牛!あなたはこれをとても簡単に見える*恥ずかしい*ありがとう! –
あなたは大歓迎ですが、大部分の正規表現を書いたので簡単でした。私はちょうど単語を追加しました。 :) – llama