2004년 7월 1일 목요일

문자열 유사도 계산 툴

http://search.cpan.org/~mlehmann/String-Similarity-1/
http://search.cpan.org/~mlehmann/String-Similarity-1/Similarity.pm

설치법)
sudo perl Makefile.PL
sudo make
sudo make test
sudo make install
perldoc String::Similarity

응용 예)
문자열 유사도를 계산해서 80% 이하일 경우 출력한다.
같은 패턴이 수많이 반복되는 text lines에서 각 pattern들을 추출할 때 사용가능

$ cat similarity_filter.pl
#!/usr/bin/perl

use String::Similarity;

my $prev_line = "";
while($line = <STDIN>)
{
    $similarity = similarity($prev_line, $line);

    if ($similarity < 0.7) {
        print $line;
        $prev_line = $line;
    }
}

#툴을 만든 목적
#
#인간은 많은 양의 data를 분석할 수 없다.
#인간은 자료의 양이 많아지면 대충 넘어가게 된다.
#data의 양을 줄일 필요가 있다.
#인간이 수동으로 줄이는 것보다는 컴퓨터에게 맡기면 빠르고 쉽고 객관적으로 줄여준다.
#(초당 5~7메가 정도 처리)

댓글 없음:

댓글 쓰기