正则表达式帮助解析系统日志

时间:2019-07-24 13:26:25

标签: regex syslog

首先,我对正则表达式非常陌生,对我来说,这样的事情看起来是如此复杂和令人困惑,因此,如果有人拥有高级资源,我很乐意看到它们。

我想按组划分:

<189>: sample_username: %LINEPROTO-5-UPDOWN: Line protocol on Interface GigabitEthernet2/0/1, changed state to down

并返回以下组:

$1=sample_username
$2=LINEPROTO-5-UPDOWN
$3=Line protocol on Interface GigabitEthernet2/0/1, changed state to down

1 个答案:

答案 0 :(得分:1)

检查this正则表达式及其说明。

<\d+>: (\w+): %([\w-]+): ([^\n]+)

重点是:

  1. 肢体感觉将捕获其中的内容。
  2. 括号将匹配其中的所有字符。
  3. [^x]表示“ 不是 x的任何字符”。
  4. x+表示任何量的x,大于零。
  5. \w\dregex meta-characters。您可以轻松搜索有关它们的更多内容。