结构化搜索和替换
传统的搜索过程不会考虑源代码的语法和语义。 即使您使用正则表达式,GoLand 仍然将您的代码视为常规文本。 结构化搜索和替换 (SSR )操作允许您根据代码结构在代码中搜索特定的代码模式或语法结构。
GoLand 根据您创建的 search templates和您应用的 conditions查找和替换源代码片段。
有关教程和详细示例,请参阅以下教程:
以下过程列出了执行结构化搜索和替换的一般说明。
结构化搜索和替换
结构化搜索
点击 。
从 文件类型 列表中,选择您想在搜索中使用的语言。
在 搜索模板 字段中,输入搜索模板或选择现有模板。
不要选择 节点下的模板,这些模板由搜索引擎内部使用以消除语言歧义。 保存的 SQL 模板位于 节点下。
如果修饰符面板被隐藏,请点击 切换修饰符面板 按钮(
)。
点击每个模板变量并设置搜索修饰符。 要设置修饰符,请点击 添加修饰符 链接。
GoLand 会在编辑器中即时突出显示所找到的代码。
(仅限 SQL)添加 SQL 上下文。
在 搜索模板 字段中,将光标放在模板的开头,然后点击 添加修饰符 链接。 从列表中选择 上下文。
(可选)从 作用域 列表中选择您想要搜索的位置:项目、模块、目录或自定义范围内。
(可选)从 搜索目标 列表中选择您想要搜索的模板部分:单独的变量或整个模板(完全匹配)。
点击 查找。

结构化替换
在主菜单中,进入 .
在 搜索模板 字段中,输入搜索模板或选择现有模板。
不要选择 节点下的模板,这些模板由搜索引擎内部使用以消除语言歧义。 保存的 SQL 模板位于 节点下。
在 替换模板 字段中,输入搜索模板或选择现有模板。
如果需要为替换模板中的变量添加修饰符,请将光标放在变量上,并使用修饰符区域管理修饰符。
点击 查找。 GoLand 在 查找 工具窗口中显示结果。
在 查找 工具窗口中,您可以进一步处理结果,逐一替换找到的项目、一次性替换所有项目,或预览潜在的更改。

使用搜索模板的操作
保存结构化搜索的模板
点击 。
在 结构化搜索 对话框中,通过使用变量和修饰符添加搜索模式。
变量是一组用美元符号括起来的字符(例如,
$tag$)。 模板变量匹配源代码表达式,如果该表达式符合用户定义的约束(修饰符),这些约束指定了模板变量可能具有的值。 在搜索过程中绑定到模板变量的任何表达式都可以在搜索或替换模板中再次使用。请点击 保存模板(A)… 按钮
并选择 在IDE 或项目中保存模板…。

共享搜索模板
在 结构化搜索 对话框 中, 创建一个新的搜索模板或使用现有的模板。
要导出模板,请点击 将模板导出到剪贴板 按钮(
)。 GoLand 将模板的 XML 表示添加到剪贴板(按 Ctrl+Shift+V 以查看剪贴板内容)。 您可以在聊天、电子邮件或论坛中与其他开发者共享此表示形式。
要导入模板,请从任意位置(电子邮件、聊天或论坛)复制(Ctrl+C )共享的 XML 代码,并在 结构搜索 对话框中,点击 从剪贴板导入模板 按钮(
)。 GoLand 获取 XML 代码表示并将其转换为模板,包括变量和范围(如果存在)。
