使用正则表达式查找并替换文本
当您需要搜索并替换特定文本模式时,请使用 正则表达式。 它们可帮助进行模式匹配、解析、结果筛选等。 掌握 regex 语法后,您几乎可以在任何语言中使用它。
IDE 使用 Java 正则表达式,它是 IDE 运行所依赖的 JDK 中包含的正则表达式。 有关模式的更多信息,请参阅 docs.oracle.com 上的 Pattern 类。 这些表达式与 PCRE(与 Perl 兼容的正则表达式)大多兼容,但并非完全兼容。
按 Ctrl+R 打开查找与替换面板。
在上方字段中输入查找字符串,在下方字段中输入替换字符串。

点击
以启用正则表达式。 如果要检查正则表达式的语法,请将鼠标悬停在
上并点击 显示表达式帮助 链接。
当您搜索包含特殊 regex 符号的文本字符串时,PyCharm 会在搜索字段中使用反斜杠
\自动转义它们。但是,当您专门搜索诸如
.[{()\^$|?*+之类的元字符时,需要使用反斜杠\对其进行转义,以便能够识别。例如,如果需要查找
.,请在搜索字段中键入\.。当您在搜索字段中输入字符范围时,PyCharm 也可以匹配字母大小写。
例如,如果只想搜索大写字符,请在搜索字段中输入以下内容:
\b[A-Z]如果在搜索字段中未选中
,PyCharm 将同时搜索小写和大写。
选择
以匹配指定范围的大小写。

浏览匹配项时,PyCharm 会显示替换提示,因此您可以在点击 替换 按钮之前查看潜在结果。

使用正则表达式捕获组和反向引用
您可以将正则表达式放在括号中以对其分组。 每个组都有一个从 1 开始的编号,因此您可以在替换模式中引用(反向引用)它们。 请注意,组 0 指的是整个正则表达式。 不过,您不仅可以通过编号 $n 引用捕获组,还可以通过名称 ${name} 引用。
例如,对于编号的捕获组,请使用以下语法:
对于命名捕获组,请使用以下语法:
查找并替换捕获组
我们来看以下示例:
切换字符大小写
您可以使用正则表达式来更改字符的大小写,使其与某些条件匹配。
打开查找与替换面板 Ctrl+R。 确保在搜索字段中选中
。
在搜索字段中输入搜索模式。
在替换字段中,取决于您想要实现的内容,输入以下语法:
\l将一个字符更改为小写,直到字符串中的下一个字符。例如,
Bar变为bar。\u将一个字符更改为大写,直到字符串中的下一个字符。例如,
bar变为Bar。\L将字符更改为小写,直到字面字符串\E的结尾。例如,
BAR变为bar。\U将字符更改为大写,直到字面字符串\E的结尾。例如,
bar变为BAR。

有关更多信息,请参阅 RegEx 语法 参考表。
