agrep
보이기
| 개발자 |
|
|---|---|
| 발표일 | 1988년 |
| 안정화 버전 | 3.41.5
|
| 저장소 | |
| 프로그래밍 언어 | C |
| 운영 체제 | |
| 종류 | 패턴 매칭 |
| 라이선스 | ISC open source license |
| 웹사이트 | www |
agrep(approximate grep)는 오픈 소스 소프트웨어 근사 문자열 매칭 프로그램으로, 1988년에서 1991년 사이 유닉스 운영체제에서 사용하기 위해 우디 맨버와 선 우가 개발하였다.[1] 나중에 OS/2, 도스, 마이크로소프트 윈도우로 포팅되었다.
이 프로그램은 레벤슈타인 거리를 기반으로 한 맨버와 우의 비탭 알고리즘을 포함하여, 알려진 가장 빠른 (내장된) 다양한 문자열 검색 알고리즘 중에서 현재 쿼리에 가장 적합한 알고리즘을 선택한다.
agrep은 인덱서 프로그램인 GLIMPSE의 검색 엔진이기도 하다. agrep은 자유 ISC 허가서에 따라 배포된다.[2]
대안 구현체
[편집]더 최근의 agrep은 TRE 정규 표현식 라이브러리와 함께 제공되는 명령줄 도구이다. TRE agrep은 패턴의 개별 그룹에 가중치와 총 비용을 별도로 할당할 수 있기 때문에 우-맨버(Wu-Manber) agrep보다 더 강력하다. 또한 유니코드를 처리할 수 있다.[3] 우-맨버 agrep과 달리 TRE agrep은 2개 조항 BSD 유사 허가서에 따라 라이선스가 부여된다.
FREJ (Fuzzy Regular Expressions for Java) 오픈 소스 라이브러리는 agrep과 유사한 방식으로 사용할 수 있는 명령줄 인터페이스를 제공한다. agrep이나 TRE와 달리 매칭된 텍스트에 대해 복잡한 치환을 구성하는 데 사용될 수 있다.[4] 그러나 그 구문과 매칭 능력은 일반적인 정규 표현식의 것과는 상당히 다르다.
같이 보기
[편집]각주
[편집]- ↑ Wu, Sun; Manber, Udi (1992년 1월 24일). 《Agrep -- a fast approximate pattern-matching tool》. 1992 Winter USENIX Conference. San Francisco, California. CiteSeerX 10.1.1.89.5424.
- ↑ WebGlimpse, Glimpse and also AGREP license since 18.09.2014 (ISC License).
- ↑ “TRE - TRE regexp matching package - Features”.
- ↑ “FREJ - Fuzzy Regular Expressions for Java - Guide and Examples”.
외부 링크
[편집]- 우-맨버(Wu-Manber) agrep
- AGREP 홈 페이지
- 유닉스용 (OSX 10.8에서 컴파일하려면 Makefile의
CFLAGs = -O라인에-Wno-return-type을 추가하라)
- 같이 보기
- TRE 정규식 매칭 패키지
- cgrep (현재 중단된 명령줄 근사 문자열 매칭 도구)
- nrgrep 명령줄 근사 문자열 매칭 도구
- R에 구현된 agrep