0
私は文字列から数値を抽出し、新しいフィールドに格納する必要があります。スクリプトフィールドでこれを行うことはできますか?文字列から数値を抽出することはできますか?
例:1ハロー3テスト
は、私はあなたがelasticsearchを使用している場合はlogstashを介してこれを行うことができます1および3
私は文字列から数値を抽出し、新しいフィールドに格納する必要があります。スクリプトフィールドでこれを行うことはできますか?文字列から数値を抽出することはできますか?
例:1ハロー3テスト
は、私はあなたがelasticsearchを使用している場合はlogstashを介してこれを行うことができます1および3
を抽出する必要があります。
は、基本的にあなたが探している番号に対応する2つの以上のフィールド、NUM1とNUM2を使用して、インデックス内の各文書を上書きするinput {
elasticsearch {
hosts => "your_host"
index => "your_index"
query => "{ "query": { "match_all": {} } }"
}
}
filter {
grok {
match => { "your_string_field" => "%{NUMBER:num1} %{GREEDYDATA:middle_stuff} %{NUMBER:num2} %{GREEDYDATA:other_stuff}" }
}
mutate {
remove_field => ["middle_stuff", "other_stuff"]
}
}
output{
elasticsearch {
host => "yourhost"
index => "your index"
document_id => %{id}
}
}
このように設定してlogstashプロセスを実行します。これは、より多くのメモリを占有する迅速かつ汚れたアプローチですが、視覚化時間ではなく、一度にすべての分割を行うことができます。
私はスクリプトでこれを行う方法があると確信しています。あなたが特定のグループを返す場所をgroovy regexと照合してみてください。
また、現時点でテストする時間がないため、私の設定の表現が正しいことを保証しません。
良い一日を!