如何使用正则表达式高亮日志内容中的字段?

如何使用正则表达式高亮日志内容中的字段?

通过正则表达式高亮日志内容中的字段

您有一个需求,需要通过正则表达式匹配日志内容并高亮匹配到的字段,类似于华为云的实现效果。

要实现此功能,可以使用 JavaScript 或其他编程语言中的正则表达式,辅以 HTML CSS

Huawei Cloud 解决方案

Huawei Cloud 使用 HTML CSS 为特定字段添加了一个额外的 span 标签,从而实现高亮效果。

手动实现

以下是一个手动实现的代码示例:

const logContent = "2022-03-10 10:30:15 [INFO] User john logged in";
const regex = /User (w+) logged in/;

const match = logContent.match(regex);

if (match) {
  const highlighted = logContent.replace(regex, `<span class="highlight">$&</span>`);
  console.log(highlighted); // 输出:2022-03-10 10:30:15 [INFO] <span class="highlight">User john logged in</span>
}

此代码使用正则表达式匹配用户名,并用 span 标签包裹匹配到的字段,css class 设置为 "highlight"。

以上就是如何使用正则表达式高亮日志内容中的字段?的详细内容,更多请关注其它相关文章!