如何将 XSLT 中的数字转换为字符的重复?
我有以下输入:
<node TEXT="txt">
<node TEXT="txt">
<node TEXT="txt"/>
<node TEXT="txt"/>
</node>
<node TEXT="txt"/>
</node>
<node TEXT="txt"/>
我当前正在使用:
<xsl:number level="multiple" count="node" format="1"/>
在 XSTL 脚本中接收以下输出:
1 txt
1.1 txt
1.1.1 txt
1.1.2 txt
1.2 txt
2 txt
但我想要此输出:
* txt
** txt
*** txt
*** txt
** txt
* txt
你能帮助我吗?
PS:我想将自由思维图转换为基本的 mediawiki 列表语法。 是的! 我知道有多种方法可以将本机自由思维图放入媒体维基,但我需要将
-tree 转换为 ***
-lists
I have the following input:
<node TEXT="txt">
<node TEXT="txt">
<node TEXT="txt"/>
<node TEXT="txt"/>
</node>
<node TEXT="txt"/>
</node>
<node TEXT="txt"/>
I am currently using:
<xsl:number level="multiple" count="node" format="1"/>
within an XSTL script to receive the following output:
1 txt
1.1 txt
1.1.1 txt
1.1.2 txt
1.2 txt
2 txt
but i want to have this output:
* txt
** txt
*** txt
*** txt
** txt
* txt
Can you help me?
PS: I want to convert a freemind map to basic mediawiki list syntax. And yes! i am aware that there are several ways to get native freemind maps into media wikis, but i need the conversion of the <node>
-tree to ***
-lists
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
一种简单的方法是直接翻译结果
into the wanted format.
此转换:
应用于此 XML 文档时:
产生所需的结果:
注意使用translate() 函数丢弃任何“.” 字符并将任何数字转换为“*”。
One simple way to do this is to just translate the result of the
into the wanted format.
This transformation:
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="text"/>
<xsl:strip-space elements="*"/>
</xsl:stylesheet>
when applied on this XML document:
produces the wanted result:
Note the use of the translate() function to discard any "." characters and to translate any digit into an "*".