使用XSL转换文本大小写

ZDNet软件频道 时间:2003-04-08 作者:翻译:Java研究组织-jacky |  我要评论()
本文关键词:
使用XML数据经常碰到的问题是文本大小写的处理。在集成legacy系统的时候,要求所有数据都是大写尤其是件麻烦事。这里有一个使用一个简单的XSL模板来处理大小写问题的解决方案。
本文译自Builder.com使用XML数据经常碰到的问题是文本大小写的处理。在集成legacy系统的时候,要求所有数据都是大写尤其是件麻烦事。这里有一个使用一个简单的XSL模板来处理大小写问题的解决方案。
示例问题

假如你有一系列的数据要传给legacy系统。Legacy程序员做好了准备接收XML格式的数据。但是,他们需要你提供所有的数据,包括XML格式的所有大写数据。你目前的数据是像清单1这样的:

清单 1: person.xml

<Person>
  <Name>
    <First>Brian</First>
    <Last>Schaffner</Last>
  </Name>
</Person>

Legacy程序员(包括应用程序)想要你提供的数据格式上略微有点不同。如清单 2所示。

清单 2: newperson.xml

<PERSON>
  <NAME>
    <FIRST>BRIAN</FIRST>
    <LAST>SCHAFFNER</LAST>
  </NAME>
</PERSON>
XSL转换

解决上述问题的方法是调用translate函数。这个函数有两个字符集合参数。第一个是被替换字符集合,第二个是替换字符集合。举例如下:

<foo><xsl:value-of select="translate
  ('This is a test', 'tis', 'TIS')" /></foo>

输出如下:

<foo>ThIS IS a TeST</foo>

这个翻译方法将所有的’t都替换成了’T’,’i’替换成了’I’,’s’替换成了’S’。

这个方法可以用于创建简单的密码。


百度大联盟认证黄金会员Copyright© 1997- CNET Networks 版权所有。 ZDNet 是CNET Networks公司注册服务商标。
中华人民共和国电信与信息服务业务经营许可证编号:京ICP证010391号 京ICP备09041801号-159
京公网安备:1101082134