Нераспознанный побег персонажа '-' | ElasticSearch

Vito Gravano спросил: 22 октября 2018 в 09:02 в: regex

Я пытаюсь создать регулярное выражение с условием: "Или maslo до пробела, тире или конца строки или начиная с mas, а затем любой символ от одного до бесконечности, кроме пробела или тире".

{
  "regexp": {
    "name": {
      "value": "(maslo( |-|$)|mas[^ \-]+)"
    }
  }
}

Это выражение [^ \-] должно быть правильным, в соответствии с Regexp Query Documentation, параграф" Классы символов ", последняя строка, в которой говорится

[^abc\-] # any character except '-' or 'a' or 'b' or 'c'

Но я получаю сообщение об ошибке:

{
    "type": "json_parse_exception",
    "reason": "Unrecognized character escape '-' (code 45)\n at [Source: org.elasticsearch.transport.netty4.ByteBufStreamInput@2a7b147b; line: 8, column: 47]"
}

Я что-то упустил? Спасибо за любой совет.

0 ответов