我在我的项目中使用弹性搜索,现在我需要从文档中找出SQL插入查询。 为了实现这一点,我准备了一个正则表达式,并将索引字段作为关键字分析器。 由于弹性搜索有一些保留字符,我正在逃避这些,但它不起作用。
例如:
(INSERT INTO\s+)('*\w+'*)(\s*\(['*\w+'*,?\s*]+\))(\s+VALUES\s+\(['*\w*\d*'*,?]+\)) expression should match following sql insert statement
INSERT INTO 'strea' ('g') VALUES ('1','2','2').
以下是我的curl命令
curl -u kibana:kibana -XGET 'https://192.168.1.28:9200/fileindex1/file/_search?pretty' -H 'Content-Type: application/json' -d'
{
"query": {
"regexp":{
"regex.content": "\(INSERT INTO\\s\+\)\('\*\\w\+'\*\)\(\\s\*\\(\['\*\\w\+'\*,\?\\s\*\]\+\\)\)\(\\s\+VALUES\\s\+\\(\['\*\\w\*\\d\*'\*,\?\]\+\\)\)"
}
}
}' -k