agrep
Developer(s) |
|
---|---|
Initial release | 1988 |
Stable release | 3.41.5
|
Repository | |
Written in | C |
Operating system | |
Type | Pattern matching |
License | ISC open source license |
Website | www |
agrep (approximate grep) is an open-source approximate string matching program, developed by Udi Manber and Sun Wu between 1988 and 1991,[1] for use with the Unix operating system. It was later ported to OS/2, DOS, and Windows.
It selects the best-suited algorithm for the current query from a variety of the known fastest (built-in) string searching algorithms, including Manber and Wu's bitap algorithm based on Levenshtein distances.
agrep is also the search engine in the indexer program GLIMPSE. agrep is under a free ISC License.[2]
Alternative implementations
A more recent agrep is the command-line tool provided with the TRE regular expression library. TRE agrep is more powerful than Wu-Manber agrep since it allows weights and total costs to be assigned separately to individual groups in the pattern. It can also handle Unicode.[3] Unlike Wu-Manber agrep, TRE agrep is licensed under a 2-clause BSD-like license.
FREJ (Fuzzy Regular Expressions for Java) open-source library provides command-line interface which could be used in the way similar to agrep. Unlike agrep or TRE it could be used for constructing complex substitutions for matched text.[4] However its syntax and matching abilities differs significantly from ones of ordinary regular expressions.
See also
References
- ^ Wu, Sun; Manber, Udi (20–24 January 1992). 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".
External links
- Wu-Manber agrep
- AGREP home page
- For Unix (To compile under OSX 10.8, add
-Wno-return-type
to theCFLAGs = -O
line in the Makefile)
- See also
- TRE regexp matching package
- cgrep a defunct command line approximate string matching tool
- nrgrep a command line approximate string matching tool
- agrep as implemented in R