发布日期: 11/15/2021

使用 Munger 函数公式

下面的示例显示 Munger 函数的用法。在这些示例中,假定有一个包含名称的字符列,“Veronica Layman”是其中一个值。要简化这些示例,文字名称“Veronica Layman”只是搜索字符串而不是列名。

有关如何将字符函数(如 Munger)并入公式的说明,请参见字符函数

插入字符

该 Munger 示例在名和姓之间查找空格,并插入中间名首字母“J.”。公式 Munger("Veronica Layman", 1, " ", " J. ") 插入中间名首字母 J. 并生成结果 Veronica J. Layman。

Munger 函数要求用双引号引用文字字符串,包括由空格构成的字符串以及包含前导或尾部空格的字符串。

删除字符

要删除字符串中的一个或多个字符,请执行以下步骤:

1. 将要删除的字符指定为 Munger 函数中的查找字符串。

2. 输入一个空的替换字符串:只有两个引号,中间没有任何内容。

例如,函数 Munger("Veronica Layman", 1, "onic", "") 从 Veronica 中删除“onic”,并生成结果 Vera Layman。

注意:括在双引号内的空(无值)字符串的“替换”字段不同于不含值的“替换”字段。若整体删除替换字符串,Munger 将在“公式编辑器”窗口中显示参数名称 (“Replace”),并且在求值时就好像该可选函数并不存在。生成的数据类型还可能从字符型改为数值型,具体取决于“查找/长度”参数的值。

查找值的位置(索引)

当查找/长度字段包含字符时,Munger 会像索引函数那样操作,并返回搜索字符串的第一个实例(若存在)的数值位置。例如,Munger("Veronica Layman", 1, " ") 会搜索单个空格并在第 9 个位置找到该空格。若找不到搜索字符串,Munger 将返回零。Munger 的这种用法可以生成与 Contains 函数相同的结果,如字符函数所示。

查找子字符串

Munger 可以提取子字符串。例如,要只提取名字,Munger("Veronica Layman", 1, 8,) 将从第一个位置开始,一直读取到第八个位置。剩余字符将被忽略,因为未定义替换参数。这将生成“Veronica”,并生成与 Substring 相同的结果,如字符函数所示。

另一种查找子字符串的方式是使用一个起始值、任意的负查找值以及一个无替换参数。Munger("Veronica Layman", 9, –1,) 返回“Layman”。

需要更多信息?有问题?从 JMP 用户社区得到解答 (community.jmp.com).