DataGrip 2026.1 Help

语言注入设置对话框:XML 属性注入

项目

描述

名称

注入的名称。

Language

要注入的语言。

  • ID :选择要注入的语言的 ID 或名称。

  • 前缀 :指定要在相应字符串值之前添加的字符序列。

  • 后缀 :指定要在相应字符串值之后添加的字符序列。

前缀和后缀是可选的。

XML 标签

在此区域,指定受已定义规则影响的特性的 XML 标记。

  • 本地名称 字段中,指定不带命名空间前缀的标记名称。 使用正则表达式指定多个标签名称 name1|name2 ,不区分大小写的名称((?i)tagname 匹配 tagname 以及 TagName )等。

  • 命名空间 字段中,指定 XML 标记的命名空间 URI。

这两个字段都是可选的。 但是,如果 本地名称 字段为空,则无论其所属的 XML 标签如何,配置都将应用于任何与已配置名称匹配的属性。

XML 属性

在此区域,定义 XML 标签属性,该属性指示应将具有此属性的标签中包含的文本视为所选语言。

  • 本地名称 :指定没有命名空间前缀的属性名称。 请使用正则表达式:例如,要匹配 HTML 事件处理程序属性,请在该字段中输入 on.*

    除非 XML 标签 区域中的 本地名称 字段为空,否则该字段为可选。 如果没有指定属性本地名称,则配置适用于封闭标签的所有属性。

  • 命名空间 :指定该属性的命名空间 URI。

高级

在此区域中,指定附加设置以实现对注入过程的更精细控制。

  • 值模式 - 在此字段中,输入一个正则表达式,用于确定要注入语言的上下文。 通过使用模式的第一个捕获组作为注入目标,您可以配置过程,使语言仅注入到匹配某个模式的值或匹配该模式的多个部分中。

  • 单个文件 - 如果关闭该选项,符合值模式的片段会被单独处理,作为不同的"文件",例如从片段编辑器的视角来看。

    如果该选项开启,相应的片段将全部合并在一起,形成一个单一的单元或“文件”。

    鉴于此数值模式

    xxx (.+) yyy (.+) zzz

    以及片段

    xxx select * yyy from family zzz,

    select *from family 在选项关闭时被视为两个独立的片段(或“文件”)。 如果此选项开启, select * from family 会被视为单个单元或“文件”。

  • XPath 条件 - 在此字段中,指定 XPath 表达式,以更精确地定位注入目标。 表达式的求值上下文就是 XML 特性本身。

    如有需要,请使用 XPath 扩展函数 ,例如 lower-case()。 此外,还有三个附加函数可以用来确定当前文件的名称、扩展名和文件类型: file-name()file-ext()file-type()。 或者,您也可以通过标准代码补全来获取可用函数列表。

2026年 3月 24日