Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用XSLT对古希腊单词进行排序?_Xslt_Sorting_Unicode_Diacritics - Fatal编程技术网

如何使用XSLT对古希腊单词进行排序?

如何使用XSLT对古希腊单词进行排序?,xslt,sorting,unicode,diacritics,Xslt,Sorting,Unicode,Diacritics,我花了太长时间试图找出如何使用XSLT和saxon方便地对古希腊语进行排序,所以我在这里提出这个问题,以便其他人可以阅读答案,我将在稍后发布 在对古希腊语进行排序时,通常会忽略变音符号 然而,在unicode中表示希腊字母重音的方法不止一种 因此,以下代码首先将我要排序的希腊分组键规范化为非预合成字符,然后删除用于排序的变音符号: <xsl:sort select="translate(normalize-unicode(current-grouping-key(), 'NFD'), &

我花了太长时间试图找出如何使用XSLT和saxon方便地对古希腊语进行排序,所以我在这里提出这个问题,以便其他人可以阅读答案,我将在稍后发布

在对古希腊语进行排序时,通常会忽略变音符号

然而,在unicode中表示希腊字母重音的方法不止一种

因此,以下代码首先将我要排序的希腊分组键规范化为非预合成字符,然后删除用于排序的变音符号:

<xsl:sort select="translate(normalize-unicode(current-grouping-key(), 'NFD'), 
&#x0300;&#x0301;&#x0304;&#x0306;&#x0313;&#x0313;&#x0300;&#x0313;&#x0300;&#x0345;&#x0313;
&#x0301;&#x0313;&#x0301;&#x0345;&#x0313;&#x0342;&#x0313;&#x0342;&#x0345;&#x0313;&#x0345;
&#x0314;&#x0314;&#x0300;&#x0314;&#x0300;&#x0345;&#x0314;&#x0301;&#x0314;&#x0301;&#x0345;
&#x0314;&#x0342;&#x0314;&#x0342;&#x0345;&#x0314;&#x0345;&#x0345;', '')"/>

然而,这从一开始就不清楚,我在这里发布这篇文章,希望人们会觉得这很有帮助

你试过这个吗:

<xsl:sort select="..." collation="http://saxon.sf.net/collation?ignore-modifiers=yes"/>


谢谢。不,我没有找到文档,或者不理解或不认识它。这正是我想要的;它们在很大程度上也依赖于实施。