我在使用elasticsearch的regexp查询时遇到了麻烦。
我想识别看起来像这样的记录: " parsed_message":"获取https://server/different-endpoints/fix-endpoint/library.js?m=15f2fe2ddf0,推荐人= https://url.com"
我已阅读https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-regexp-query.html并了解到弹性搜索正则表达式匹配的工作方式略有不同。但根据我读到的内容,我玩了一遍,发现了
GET logs-*/_search
{
"query": {
"regexp": {
"parsed_message": ".*\\.js.*"
}
}
}
实际上找到了结果。由于这个表达方式很粗糙,我试过
GET logs-*/_search
{
"query": {
"regexp": {
"parsed_message": ".*\\.js\\?.*"
}
}
}
使它更精确一点。但即使经过这一点改变,查询也不再匹配。我做错了什么?
祝你好运, BK