预订演示

请注意 : 本帮助页面不适用于最新版本的Enterprise Architect. 最新的帮助文档在这里.

前页 后页

转换名称

不同的目标平台使用不同的命名约定,因此您可能不想将元素名称直接复制到转换后的模型中。为了满足此要求,转换模板提供了CONVERT_NAME函数宏。

转换名称的另一种方法是使用REMOVE_PREFIX宏从原始名称中删除前缀。

CONVERT_NAME(<originalName>,<originalFormat>,<targetFormat>)

此宏将假定位于<originalFormat>中的<originalName>转换为<targetFormat>。

支持的格式为:

  • 驼峰式大小写:第一个单词以小写字母开头,但随后的单词以大写字母开头;例如,myVariableTable
  • Pascal大小写:每个单词的首字母大写;例如MyVariableTable
  • 间隔:单词之间用空格隔开;字母大小写被忽略
  • 强调:单词之间用下划线隔开;字母大小写被忽略
原始格式可能还会指定要使用的定界符列表。例如,只要找到空格或下划线,值_就会打断单词。目标格式还可以使用格式字符串,该字符串指定每个单词的大小写以及它们之间的分隔符。它采用以下形式:

<firstWord>(<delimiter>)<otherWords>

  • <firstWord>控制第一个单词的大小写
  • <delimiter>是单词之间生成的字符串
  • <otherWords>适用于第一个单词之后的所有单词
<firstWord>和<otherWords>都是两个字符的序列。第一个字符代表该单词第一个字母的大小写,第二个字符代表所有后续字母的大小写。大写字母将输出强制为大写,小写字母将输出强制为小写,其他任何字符均保留原始大小写。

示例1:将每个单词的首字母大写并用空格分隔多个单词:

“ Ht()Ht”输出“我的变量表”

示例2:生成等效的Camel Case,但颠倒了大写和小写的作用;也就是说,除第一个单词之后的每个单词的第一个字符外,所有字符均为大写:

“ HT()hT”输出“我的变量表”

REMOVE_PREFIX(<原始名称>, <prefixes> )

此宏从<originalName>中删除在<prefixes>中找到的所有前缀。前缀以分号分隔的列表指定。

该宏通常与CONVERT_NAME宏结合使用。例如,以下代码根据Java选项创建一个get属性名称:

$ propertyName =%REMOVE_PREFIX(attName,genOptPropertyPrefix)%

%if genOptGenCapitalisedProperties ==“ T”%

$ propertyName =%CONVERT_NAME($ propertyName,“骆驼案”,“帕斯卡案”)%

%万一%

笔记

  • 从Camel Case或Pascal Case转换时不支持首字母缩写词