在文本对象中重命名国家名称

rename country name in text object

我有一个 qlikview 文件,其中有一个显示国家/地区的文本对象,获取国家/地区的文本对象的表达式是

=[FIN-AP-公司代码国家文本]

现在源数据中有一些国家没有正确命名,现在我应该在qlikview文件中将国家名称重命名为正确名称

Current Name                    Rename to 
Utd.Arab Emir.                  United Arab Emirates 
Bahráin                         Bahrain 
Rep.of                          Congo Republic of Congo 
Cote d'Ivoire                   Ivory Coast 
Camerún                         Cameroon 
Argelia                         Algeria 
Gabón                           Gabon 
Guinea Ecuatori                 Equatorial Guinea 
Jordania                        Jordan 
Níger                           Niger 
Omán                            Oman 
Sudáfrica                       South Africa 

您可以在脚本中使用 ApplyMap() 函数来更改名称。

CountryMapping:
Mapping
Load * Inline [
  OldName        , NewName
  Utd.Arab Emir. , United Arab Emirates 
  Bahráin        , Bahrain 
  Rep.of Congo   , Republic of Congo 
];

然后在加载国家字段的脚本部分:

ApplyMap('CountryMapping', [FIN-AP-Company Code Country Text] ) as [FIN-AP-Company Code Country Text]

这将仅为“CountryMapping”table 中指定的国家/地区更改名称。所有其他值将保持原样。

如果您无法重新加载,请在表达式周围嵌套几个 "Replace" 命令。

替换(s, fromstring ,tostring)

Returns 将字符串 s 中所有出现的给定子字符串替换为另一个子字符串后的字符串。该函数是非递归的,从左到右运行。

s 是原始字符串。

fromstring 是一个字符串,可能在字符串中出现一次或多次。

tostring 是将替换字符串中所有出现的 fromstring 的字符串。

示例: 替换('abccde','cc','xyz') returns 'abxyzde'