0
0
A modern text indexing library for go. (this is a mirror of the github repository) http://www.blevesearch.com/
Go to file
Marty Schoch 0f16eccd6b new tokenizer that allows you to pre-identify tokens with regexp
name "exception"
configure with list of regexp string "exceptions"
these exceptions regexps that match sequences you want treated
as a single token.  these sequences are NOT sent to the
underlying tokenizer
configure "tokenizer" is the named tokenizer that should be
used for processing all text regions not matching exceptions

An example configuration with simple patterns to match URLs and
email addresses:

map[string]interface{}{
	"type":      "exception",
	"tokenizer": "unicode",
	"exceptions": []interface{}{
		`[hH][tT][tT][pP][sS]?://(\S)*`,
		`[fF][iI][lL][eE]://(\S)*`,
		`[fF][tT][pP]://(\S)*`,
		`\S+@\S+`,
  }
}
2015-04-08 15:31:58 -04:00
analysis new tokenizer that allows you to pre-identify tokens with regexp 2015-04-08 15:31:58 -04:00
docs fix improper call to fmt.Errorf instead of Printf 2015-04-07 11:24:01 -04:00
document added test and fixed behavior to ensure correct value is stored 2015-01-19 15:40:18 -05:00
http fix issues identified by errcheck 2015-04-07 15:39:56 -04:00
index added String method for Batch 2015-04-08 10:41:42 -04:00
numeric_util Fix typos in comments and strings 2014-12-18 18:43:12 +01:00
registry fix compilation 2014-09-07 14:13:32 -04:00
search fix errors identified by errcheck 2015-04-07 18:05:41 -04:00
test fix errors identified by errcheck 2015-04-07 18:05:41 -04:00
utils fix issues identified by errcheck 2015-04-07 11:42:46 -04:00
.gitignore fix issues identified by errcheck 2015-04-07 11:42:46 -04:00
.travis.yml adding errcheck to travis builds 2015-04-07 18:11:29 -04:00
config_cld2.go rename imports from couchbaselabs to blevesearch 2014-08-28 15:38:57 -04:00
config_cznicb.go add go1.4 build tag to cznicb KVStore 2015-01-15 15:54:25 -08:00
config_forestdb.go added top-level config to optionally include forestdb support 2015-01-13 17:33:41 -05:00
config_icu.go renamed unicode_word_boundary package to icu 2014-10-17 15:15:13 -04:00
config_kagome.go relocated kagome tokenizer and introduced ja analyzer 2014-09-16 11:21:29 -04:00
config_leveldb.go rename imports from couchbaselabs to blevesearch 2014-08-28 15:38:57 -04:00
config_stemmer.go rename imports from couchbaselabs to blevesearch 2014-08-28 15:38:57 -04:00
config.go new tokenizer that allows you to pre-identify tokens with regexp 2015-04-08 15:31:58 -04:00
doc.go apply doc fix patch from rakoo 2014-09-07 09:09:47 -04:00
error.go typo in storage type error message 2015-01-06 09:18:36 -08:00
examples_test.go fix issues identified by errcheck 2015-04-07 14:52:00 -04:00
index_alias_impl_test.go fix issues identified by errcheck 2015-04-07 14:52:00 -04:00
index_alias_impl.go significant change to index format, support dictionary rows 2015-03-10 16:22:19 -04:00
index_alias.go Fix typos in comments and strings 2014-12-18 18:43:12 +01:00
index_impl.go fix bug, internal ops must check that index is open 2015-04-03 18:05:24 -04:00
index_meta_test.go fix issues identified by errcheck 2015-04-07 15:39:56 -04:00
index_meta.go Check all return errors 2015-03-11 01:28:51 -04:00
index_stats.go added support for tracking index stats and exposing via expvar 2014-10-02 11:12:49 -07:00
index_test.go fix test to actually work reliably 2015-04-08 11:17:34 -04:00
index.go added String method for Batch 2015-04-08 10:41:42 -04:00
LICENSE adding license file 2014-04-17 17:03:15 -04:00
mapping_document.go fix mapping analyzer lookup with multiple fields 2015-02-13 08:46:36 -05:00
mapping_field.go clean up logging to use package level *log.Logger 2014-12-28 12:14:48 -08:00
mapping_index.go fix mapping analyzer lookup with multiple fields 2015-02-13 08:46:36 -05:00
mapping_test.go fix mapping analyzer lookup with multiple fields 2015-02-13 08:46:36 -05:00
query_boolean.go Fix typos in comments and strings 2014-12-18 18:43:12 +01:00
query_conjunction.go major refactor of kvstore/index internals, see below 2014-09-12 17:21:35 -04:00
query_date_range.go Fix typos in comments and strings 2014-12-18 18:43:12 +01:00
query_disjunction.go major refactor of kvstore/index internals, see below 2014-09-12 17:21:35 -04:00
query_fuzzy.go fix godoc around NewFuzzyQuery function 2015-03-02 09:29:06 -05:00
query_match_all.go major refactor of kvstore/index internals, see below 2014-09-12 17:21:35 -04:00
query_match_none.go major refactor of kvstore/index internals, see below 2014-09-12 17:21:35 -04:00
query_match_phrase.go Fix typos in comments and strings 2014-12-18 18:43:12 +01:00
query_match.go clean up logging to use package level *log.Logger 2014-12-28 12:14:48 -08:00
query_numeric_range.go major refactor of kvstore/index internals, see below 2014-09-12 17:21:35 -04:00
query_phrase.go fix to phrase/phrase match search involving stop words 2014-11-25 10:07:54 -05:00
query_prefix.go major refactor of kvstore/index internals, see below 2014-09-12 17:21:35 -04:00
query_regexp.go added regexp and wildcard queries 2015-03-11 16:57:22 -04:00
query_string_parser_test.go fix query parser to recognize field prefix before fuzzy tilde 2015-01-19 16:20:32 -05:00
query_string_parser.go when generating parser, run go fmt on the lexer 2015-01-02 10:02:20 -08:00
query_string.go major refactor of kvstore/index internals, see below 2014-09-12 17:21:35 -04:00
query_string.nex migrated from genparser.sh to go generate 2015-01-01 19:29:16 -08:00
query_string.nn.go fix query parser to recognize field prefix before fuzzy tilde 2015-01-19 16:20:32 -05:00
query_string.y fix query parser to recognize field prefix before fuzzy tilde 2015-01-19 16:20:32 -05:00
query_string.y.go fix query parser to recognize field prefix before fuzzy tilde 2015-01-19 16:20:32 -05:00
query_term.go major refactor of kvstore/index internals, see below 2014-09-12 17:21:35 -04:00
query_test.go changed error constants to camel case 2014-09-02 14:14:05 -04:00
query_wildcard.go added regexp and wildcard queries 2015-03-11 16:57:22 -04:00
query.go added regexp and wildcard queries 2015-03-11 16:57:22 -04:00
README.md Added Gitter badge 2015-02-23 19:54:11 +00:00
reflect.go change another variable capitalization 2014-09-02 14:22:21 -04:00
search_test.go SearchResult Took field now returns full time in Search() 2015-02-19 12:11:40 +05:30
search.go SearchResult Took field now returns full time in Search() 2015-02-19 12:11:40 +05:30

bleve bleve

Join the chat at https://gitter.im/blevesearch/bleve

modern text indexing in go - blevesearch.com

Try out bleve live by searching our wiki.

Features

  • Index any go data structure (including JSON)
  • Intelligent defaults backed up by powerful configuration
  • Supported field types:
    • Text, Numeric, Date
  • Supported query types:
    • Term, Phrase, Match, Match Phrase, Prefix
    • Conjunction, Disjunction, Boolean
    • Numeric Range, Date Range
    • Simple query syntax for human entry
  • tf-idf Scoring
  • Search result match highlighting
  • Supports Aggregating Facets:
    • Terms Facet
    • Numeric Range Facet
    • Date Range Facet

Discussion

Discuss usage and development of bleve in the google group.

Indexing

	message := struct{
		Id   string
		From string
		Body string
	}{
		Id:   "example",
		From: "marty.schoch@gmail.com",
		Body: "bleve indexing is easy",
	}

	mapping := bleve.NewIndexMapping()
	index, err := bleve.New("example.bleve", mapping)
	if err != nil {
		panic(err)
	}
	index.Index(message.Id, message)

Querying

	index, _ := bleve.Open("example.bleve")
	query := bleve.NewQueryStringQuery("bleve")
	searchRequest := bleve.NewSearchRequest(query)
	searchResult, _ := index.Search(searchRequest)

License

Apache License Version 2.0

Status

Build Status Coverage Status