我们正在处理PL / SQL中的长文本代码,并且我们经常发现代码量由于不必要的注释而增加。其中大多数都是单行风格的评论。
如何编写一个脚本,从代码中删除所有这些注释行?
例如: 原始代码:
DECLARE
a date := 0;
-- NHT20302939 Dt 22.09.2009 Start
b VARCHAR2(1) := 'N';
-- NHT20302939 Dt 22.09.2009 End'
BEGIN
-- NHT20302939 Dt 22.09.2009 Start
a = GET_DATE();
-- NHT20302939 Dt 22.09.2009 End
if a > '22-MAR-2010' THEN
-- NHT20302939 Dt 22.09.2009 Start
Null;
-- NHT20302939 Dt 22.09.2009 End
else
if myschema.PROCEDURE(b,
a) = FALSE THEN
raise form_trigger_failure
end if;
end if;
END;
所需代码:
DECLARE
a date := 0;
b VARCHAR2(1) := 'N';
BEGIN
a = GET_DATE();
if a > '22-MAR-2010' THEN
Null;
else
if myschema.PROCEDURE(b,
a) = FALSE THEN
raise form_trigger_failure
end if;
end if;
END;
事先提醒...... Suddha Satta Ray
答案 0 :(得分:0)
尝试使用此内容编辑文件:
sed -e '/^\s*--.\+/d' -i yourFile.txt
不要忘记以前备份所有文件!
答案 1 :(得分:0)
对于存储的包,程序等,你可以得到这样的未注释的来源:
select text
from user_source
where name = 'MYPACKAGE'
and type = 'PACKAGE BODY'
and ltrim(text) not like '--%'
order by line;