Thale,

I played with your data a little and it turns out it is more complex than I 
thought. Something like this works somewhat but may require some 
fine-tuning depending on your exact requirements. Anyway give this a try 
and see how it works (BTW I did this in ES 1.0 RC 2):

1) PUT http://localhost:9200/test
{
  "settings": {
    "index": {
      "number_of_shards": 1, 
      "number_of_replicas": 0,
      "analysis": {
        "analyzer": {
          "en1": {
            "tokenizer": "standard",
            "filter": [
              "standard",
              "lowercase",
              "en1"
            ]
          }
        },
        "filter": {
          "en1": {
            "type" : "ngram", 
            "min_gram" : 4, 
            "max_gram" : 4
          }
        }
      }
    }
  }, 
  "mappings": {
    "doc": {
      "properties": {
        "street": {
          "type": "string",
          "analyzer": "en1"
        }
      }
    }
  }
}

2) POST http://localhost:9200/test/doc/_bulk
{ "index": {} }
{ "street": "Lakeshore Dr" }
{ "index": {} }
{ "street": "Sunnyshore Dr" }
{ "index": {} }
{ "street": "Lake View Dr" }
{ "index": {} }
{ "street": "Shore Dr" }

Query example:

GET http://localhost:9200/test/doc/_search
{
  "query": {
    "match": {
      "street": {
        "query": "lake shore dr",
        "minimum_should_match": "3<50%"
      }
    }
  }
}


-- 
You received this message because you are subscribed to the Google Groups 
"elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/elasticsearch/b3c62899-30ad-4223-9dfe-7053e2c72f72%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to