上述 SMS_TEXT 映射表示例中条目的说明如下:
上例中,元字符 $R 用于实现和控制映射的重复应用。通过在这些映射上迭代,可获得强大的过滤功能。例如,要清除单个前导或后缀空格 (6) 或将两个空格缩减为一个空格 (7) 的简单映射在作为整体采用时会成为一个过滤器,能够去除全部前导和后缀空格并将多个连续空格缩减为一个空格。这种过滤有助于减少每条 SMS 消息的长度。
这两个条目会使 From: 和 Subject: 标题行包含在 SMS 消息中。From: 和 Subject: 分别缩写为 F: 和 S:。某些其他条目可以进一步影响 From: 和 Subject: 标题行。
此条目将把包含 <...> 模式的 From: 标题行缩减至只剩下尖括号中的文本。例如:
F: "John C. Doe" <jdoe@siroe.com> (Hello)
将被替换为:
F: jdoe@siroe.com
此条目将删除 From: 标题行中 (...) 模式内包含的所有内容。例如:
F: "John C. Doe" <jdoe@siroe.com> (Hello)
将被替换为:
F: "John C. Doe" <jdoe@siroe.com>
此条目将删除 From: 标题行中 "..." 模式内包含的所有内容。例如:
F: "John C. Doe" <jdoe@siroe.com> (Hello)
将被替换为:
F: <jdoe@siroe.com> (Hello)
此条目将删除 From: 标题行中 at 符号 (@) 右侧包含的所有内容。例如:
F: "John C. Doe" <jdoe@siroe.com> (Hello)
将被替换为:
F: "John C. Doe" <jdoe@
这四个条目将从消息标题和主体行中删除前导和后缀空格。
这两个条目会将消息标题和主体行中的两个空格缩减为一个空格。
这四个条目会将双字节短划线、句号、感叹号和问号转变成匹配字符的单字节形式。这样还有助于缩减 SMS 消息中的字节数。
条目的顺序是非常重要的。例如,按照给定顺序,消息 From: 标题行的正文:
From: "John C. Doe" (Hello)
将缩减为:
jdoe
实现这一目的的操作步骤如下:
我们以 From: 标题行开始:
From: "John C. Doe" (Hello)
第一个映射条目中的模式将与之匹配并生成以下结果:
F: "John C. Doe" (Hello)
结果字符串中的 $R 元字符将使结果字符串被重新映射。
此映射将应用到上一步的结果字符串中。这将生成:
F: jdoe@siroe.com
映射中的 $R 会把整个映射集重新应用到此步骤的结果中。
接下来,将应用映射生成:
F: jdoe
映射中的 $R 会把整个映射集重新应用到此步骤的结果中。
接下来,将应用映射生成:
F:jdoe
映射中的 $R 会把整个映射集重新应用到此步骤的结果中。
由于其他条目都不匹配,所以最后将得到以下字符串:
F:jdoe
,该字符串被并入到 SMS 消息中。
imsimta 测试映射实用程序可用于测试映射表。例如,
# imsimta test -mapping -noimage_file -mapping_file=test.txt Enter table name: SMS_TEXT Input string: H|From: "John C. Doe" (Hello) Output string: H|F:jdoe Output flags: [0,1,2,89] Input string: ^D # |
有关 imsimta test 实用程序的更多信息,请参见《Sun Java System Messaging Server 6 2005Q4 Administration Reference》中的“imsimta test”。