php中文网

PyCharm 中用于突出显示注释的正则表达式

php中文网

学生经常问为什么需要正则表达式。乍一看,它们的用处可能并不明显。一般来说,它们的目的是处理文本:搜索和替换。

例如,我曾经需要比较两次测试运行的日志。它们可能是相同的,但每一行都以不同的时间戳开始。
使用正则表达式来匹配时间戳,我将这些子字符串替换为 Sublime 中的空字符串(任何文本编辑器都可能提供此功能)。之后,我在 Meld 中比较了这两个文件,Meld 是一个用于比较我经常使用的文件和目录的方便工具。

PyCharm 还支持使用正则表达式搜索和替换文本。

但是,我将讨论另一个使用正则表达式的 PyCharm 功能:突出显示代码中的特定注释。最常见的例子是 TODO 注释。

但是 PyCharm 如何知道以特定颜色突出显示此文本?这些设置可以自定义,这就是我们将要探索的内容。

导航至菜单:
文件 -> 设置... -> 编辑器 -> TODO

在这里,您将找到两个用于突出显示注释的预定义规则:TODO 和 FIXME。尝试一下 — FIXME 使用与 TODO 相同的突出显示规则。
规则本身由正则表达式定义:btodob.*.

此模式匹配:

  1. 单词todo作为一个完整的单词(使用b表示单词边界)
  2. 后跟任意数量的任意字符 (.*)。

单词边界 (b) 是 w 字符(字母、数字或下划线)和非 w 字符之间的边缘。

在此菜单中,您可以添加自己的规则。例如,让我们添加一条“未实施”的规则。

在这里,您可以配置:

  • 模式:匹配要突出显示的文本的正则表达式。
  • 图标:显示在 TODO 工具窗口中的图标。
  • 区分大小写:匹配是否区分大小写。
  • 默认样式:如果不勾选,您可以自定义突出显示样式,否则将应用默认的 TODO 样式。
  • 自定义样式选项:
    • 字体样式(粗体、斜体)
    • 文字颜色
    • 背景颜色
    • 错误条纹颜色
    • 装饰风格及其颜色(下划线、粗体下划线、下波浪线、边框、删除线、虚线)。

这是我们得到的:

这是它在 TODO 工具窗口中的显示方式:可以看到我们选择的自定义图标,并且边框颜色更加突出。在此屏幕截图中,我还单击了过滤器按钮以显示尚未应用任何过滤器。

让我们返回 TODO 设置并为“未实施”规则添加过滤器。

现在,在 TODO 工具窗口中,列表中会出现一个新的“未实现”过滤器。当您选择此过滤器时,TODO 工具窗口中将仅显示“未实施”注释。

TODO 注释设置中还有一个选项我们没有提到:“将以下几行的缩进文本视为同一 TODO 的一部分”。

此复选框适用于所有规则。如果 TODO 注释后面的行包含缩进注释,则将应用相同的规则。


如您所见,无需创建过于复杂的正则表达式 - 简单的就足够了。然而,即使在这种情况下,它们也可以让您的工作变得更轻松。
你经常使用正则表达式吗?

以上就是PyCharm 中用于突出显示注释的正则表达式的详细内容,更多请关注php中文网其它相关文章!