Character escaping

On Wed, 2012-11-21 at 07:40 -0500, Brandon Hilkert wrote:

Concretely, a search for "yahoo!" fails with query_string as expected.
Using "text" queries it works fine. However, switching to "match", it
fails for the same escaping reasons as "query_string". So with "text"
being deprecated, I'm just wondering what the appropriate query is to
use to get the behavior of a "text" query that when querying terms
like "yahoo!".

No it doesn't. Why do you think it fails? eg:

curl -XGET 'http://127.0.0.1:9200/test/test/_search?pretty=1' -d '
{
"query" : {
"match" : {
"_all" : "yahoo!"
}
}
}
'

[Wed Nov 21 13:45:23 2012] Response:

{

"hits" : {

"hits" : [

{

"_source" : {

"text" : "yahoo is a search engine"

},

"_score" : 0.15342641,

"_index" : "test",

"_id" : "ZLN0QHS-RO-zUw7nM8SK-g",

"_type" : "test"

}

],

"max_score" : 0.15342641,

"total" : 1

},

"timed_out" : false,

"_shards" : {

"failed" : 0,

"successful" : 5,

"total" : 5

},

"took" : 2

}

--