1
次の文字列を次の式を使用して正規表現式に変換しようとするとエラーが発生します。ログテキストを正規表現に変換する
^([[^]]+]) ([[^]]+]) (-|[a-z,A-Z,\s,\W]*)
2017年6月12日02:59:06.875 obcdjkauthoreduser [INFO]ユーザー= QA-エクセル、= ambariサーバ-devのユーザに試みるプリンシパル= [email protected] -excel for operation = getInfo from host = /00.000.00.00
エラー、inexistant質問に答えることはできません。 – Aaron
もっと真剣に、あなたの最初の2つのキャラクタークラスは外に見えます。 ']'以外のものとマッチさせようとするなら、 '[^]]'は動作するはずです。最初の '[']がリテラル文字として理解されるべきなら、それはエスケープされるべきです。 '\ [[^]] +]'は '[...]'で囲まれた非 ' - 'の空でない文字列を表します – Aaron
'\ W'には' \ s'、 '、'はありません文字クラス内の特別な意味と ' - 'は、最後、最初、またはエスケープされることによって文字クラス内で表現できます。あなたが探していたのは、^(\ [[^]] +)(\ [[^]] +)([-a-zA-Z \ W] *) 'です。これは、まだあなたのログ形式と一致することからかなり離れていることに注意してください。 – Aaron