Я думаю, что нашел ответ на свой вопрос:
Сначала, когда мой индекс настроен так, мне нужно использовать name.keyword для полнотекстового поиска
{
"myindex" : {
"aliases" : { },
"mappings" : {
"mytype" : {
"properties" : {
"name" : {
"type" : "text",
"fields" : {
"keyword" : {
"type" : "keyword",
"ignore_above" : 256
}
}
}
...
Затем,делая запрос, используя формат "URI Search", я должен использовать типичное преобразование, пробел должен быть записан как + + должен быть записан как% 2b, любые другие специальные символы в URL должны быть написаны с его эквивалентом% ASCII, так что получается, что мойрегулярное выражение /.*le +compu.*/
должно быть запрошено так:
curl -XGET "http://es:9200/myindex/mytype/_search?q=name.keyword:/.*pple+%2bcomp.*/&pretty"
Наконец, я не вижу в regexp doc или lucene упоминания символа \s
в качестве подстановочного знакадля пространства, но не имеет большого значения, так как его можно переписать с помощью под-шаблонов регулярных выражений.