vim 에서 .java 파일의 모든 주석을 제거하는 명령이 어떤건가요
글쓴이: hwayak / 작성시간: 목, 2005/06/09 - 2:46오후
vim 에서 .java 파일에 있는 주석( /** */ 형태, // 형태, /* */ 형태)처리된 부분을 지워버리고 싶은데요..
그래서 vim 에서 command mode 에서
:%s/ //g
^^
이 사이에 적당히 어떤 정규식을 넣으면 될듯 한데.. 잘 모르겟네요..
http://bbs.kldp.org/viewtopic.php?t=57794&highlight=%C0%DA%B9%D9+%C1%D6%BC%AE+%C1%A6%B0%C5
여기에 있는 대로
:%s/\v\/\/.*$|\/\*[^\n]*\*\///g
를 실행했더니 주석은 물론이고, 코드 까지 지워져 버리던데 ㅠ.ㅠ
어떻게 하면 되는가요?
Forums:


다음 펄 코드 한 번 이용해 보세요. 제가 요새 펄 정규표현식을 공부하는
다음 펄 코드 한 번 이용해 보세요. 제가 요새 펄 정규표현식을 공부하는 중이라서 한 번 만들어 봤습니다. rmcomments.pl 등의 이름으로 저장하신 후 'perl rmcomments.pl *.java'라고 하시면 주석이 제거된 *.java.new라는 파일들이 만들어집니다.
undef $/; foreach $file (@ARGV) { $outfile = "$file.new"; open(FILE, $file) || die("Couldn't open $file: $!\n"); $text = <FILE>; close(FILE); $text =~ s|/\*.*\*/||g; # '/* 주석 */' 처리 # '/* 주석1 */ 코드1 /* 주석2 */ 코드2'처럼 한 줄에 # 주석이 두 번 이상 나오면 제대로 처리하지 못함 $text =~ s|//.*(?=\n)||g; # '// 주석' 처리 open(OFILE, ">$outfile") || die("Couldn't create $outfile: $!\n"); print OFILE $text; close(OFILE); }댓글 달기