ストア プロシージャでコメント アウトされたコード /* .. */ を実行時に削除する方法を教えてください。以下に例を示します。私の SP が以下の方法でコメント付きコードのジャンクを見つけた場合、コメント付きコードはすべて、コメント付き記号を含めて削除されます。
/*
INSERT INTO MATERIAL.GTT_DMD
(
asof_src_dt
, asof_src_tm
)
SELECT
asof_src_dt
, CAST (asof_src_ts AS TIME(0)) AS asof_src_tm
FROM DEMAND.v_supl SNP_DMD
*/
サポートしてくれてありがとう、正規表現を見つけました
/\*[\w\W]*?(?=\*/)\*/
これがコードを削除する最良の方法であるかどうかを確認するのに役立ちますか. ありがとう。
public void DeleteCommentedCode(string filePath)
{
StreamReader input = new StreamReader(filePath);
Regex pattern = new Regex("/\*[\w\W]*?(?=\*/)\*/");
StreamReader streamReader = new StreamReader(filePath);
StreamWriter streamWriter = new StreamWriter(filePath + ".tmp");
while (!streamReader.EndOfStream)
{
string data = streamReader.ReadLine();
if(pattern.IsMatch(data))
{
data = data.Replace(data, ""); // Replace with empty
streamWriter.WriteLine(data);
}
}
streamReader.Close();
streamWriter.Close();
}