如何在 PhpStorm 中用正则表达式替换文本
How to replace text with Regular Expressions in PhpStorm
网上一堆错误的例子,都不行
在我的 1000 个文件和 100 个文件夹的面向对象 WordPress/Php 插件项目中,我需要替换所有语言常量,例如:
NRS_PHRASE1_TEXT
动态语言方法调用,例如:
$this->lang->getText('NRS_PHRASE1_TEXT')
这里必须使用正则表达式,以节省工作时间。但是 PhpStorm 文档没有为您提供如何操作的教程,并且 Google 和 Whosebug 充满了错误或 90% 正确(而非 100%)的答案。因此,我制作本教程是为了为您节省时间,这样您就无需花一个小时进行实验,同时就能正确使用。请参阅本主题中的答案,作为我的教程。
要替换 PhpStorm 8、PhpStorm 9 和更新版本中的文本,也可能在 WebStorm 10 中替换文本,请打开您的项目,右键单击要替换代码的插件文件夹,select 'Replace in Path'选项。按照下面的教程进行操作。
替换 FROM => TO:
NRS_PHRASE1_TEXT => $this->lang->getText('NRS_PHRASE1_TEXT')
NRS_PHRASE_TWO_TEXT => $this->lang->getText('NRS_PHRASE_TWO_TEXT')
搜索select此搜索模式:
正则表达式
在 "SEARCH" 字段值中输入此短语:
NRS_([A-Z_0-9]+)_TEXT
在 "REPLACE" 字段值中输入此短语:
\$this->lang->getText('NRS__TEXT')
在“搜索”字段中,开始输入描述所有标题属性的正则表达式。请注意,虽然正则表达式 \stitle=".?"\s[/>]* 匹配 title 属性的内容,但建议捕获组以在 Replace 中引用它们场地:
\stitle="(.)?"\s(/>*)
请注意,对于正则表达式,替换预览显示在工具提示中。
网上一堆错误的例子,都不行
在我的 1000 个文件和 100 个文件夹的面向对象 WordPress/Php 插件项目中,我需要替换所有语言常量,例如:
NRS_PHRASE1_TEXT
动态语言方法调用,例如:
$this->lang->getText('NRS_PHRASE1_TEXT')
这里必须使用正则表达式,以节省工作时间。但是 PhpStorm 文档没有为您提供如何操作的教程,并且 Google 和 Whosebug 充满了错误或 90% 正确(而非 100%)的答案。因此,我制作本教程是为了为您节省时间,这样您就无需花一个小时进行实验,同时就能正确使用。请参阅本主题中的答案,作为我的教程。
要替换 PhpStorm 8、PhpStorm 9 和更新版本中的文本,也可能在 WebStorm 10 中替换文本,请打开您的项目,右键单击要替换代码的插件文件夹,select 'Replace in Path'选项。按照下面的教程进行操作。
替换 FROM => TO:
NRS_PHRASE1_TEXT => $this->lang->getText('NRS_PHRASE1_TEXT')
NRS_PHRASE_TWO_TEXT => $this->lang->getText('NRS_PHRASE_TWO_TEXT')
搜索select此搜索模式:
正则表达式
在 "SEARCH" 字段值中输入此短语:
NRS_([A-Z_0-9]+)_TEXT
在 "REPLACE" 字段值中输入此短语:
\$this->lang->getText('NRS__TEXT')
在“搜索”字段中,开始输入描述所有标题属性的正则表达式。请注意,虽然正则表达式 \stitle=".?"\s[/>]* 匹配 title 属性的内容,但建议捕获组以在 Replace 中引用它们场地: \stitle="(.)?"\s(/>*) 请注意,对于正则表达式,替换预览显示在工具提示中。