解析 Syslog 中的正则表达式帮助

Posted

技术标签:

【中文标题】解析 Syslog 中的正则表达式帮助【英文标题】:Regex Help in Parsing Syslog 【发布时间】:2019-07-24 13:26:25 【问题描述】:

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

我想把它分成几组:

<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】:

检查this 正则表达式以及解释。

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

重点是:

    括号将捕获其中的内容。 括号将匹配里面的所有字符。 [^x] 表示“任何 x的字符”。 x+ 表示任意数量的x,大于零。 \w\d 是 regex meta-characters。您可以轻松搜索更多关于他们的内容。

【讨论】:

注意[\w_] = \w. @WiktorStribiżew 谢谢!更新了我的答案

以上是关于解析 Syslog 中的正则表达式帮助的主要内容,如果未能解决你的问题,请参考以下文章

syslog的Python正则表达式解析

Python 使用正则表达式解析日志

正则表达式解析谷歌表格中单元格中的单词

使用正则表达式替代 HTML 解析

用于解析.net json Datetime 的 javascript 正则表达式

Python 用正则表达式解析数据变成字典。