相关疑难解决方法(0)

在Ruby中对数组进行排序忽略文章("the","a","an")

在我的应用程序中,我需要显示一个歌曲列表.现在我这样做:

Song.all.sort {|x,y| x.artist.name <=> y.artist.name }
Run Code Online (Sandbox Code Playgroud)

不幸的是,这意味着"臭名昭着的大"将与T一起排序,而我希望他与N一起排序(即,我想忽略文章 - "the","a"和"an" - 对于排序的目的.

我的第一个想法是这样做:

Song.all.sort {|x,y| x.artist.name.gsub(/^(the|a|an) /i, '') <=> y.artist.name.gsub(/^(the|a|an) /i, '') }
Run Code Online (Sandbox Code Playgroud)

但它似乎没有用.思考?

ruby ruby-on-rails

4
推荐指数
1
解决办法
946
查看次数

使用XSLT排序时忽略'A'和'The'

我希望列出一个列表,忽略任何初始明确/不定的文章'the'和'a'.例如:

  • 错误的喜剧
  • 村庄
  • 仲夏夜之梦
  • 第十二夜
  • 冬天的故事

我想也许在XSLT 2.0中,这可以通过以下方式实现:

<xsl:template match="/">
  <xsl:for-each select="play"/>
    <xsl:sort select="if (starts-with(title, 'A ')) then substring(title, 2) else
                      if (starts-with(title, 'The ')) then substring(title, 4) else title"/>
    <p><xsl:value-of select="title"/></p>
  </xsl:for-each>
</xsl:template>
Run Code Online (Sandbox Code Playgroud)

但是,我想使用浏览器内处理,因此必须使用XSLT 1.0.有没有办法在XLST 1.0中实现这一目标?

sorting xslt xslt-1.0

3
推荐指数
1
解决办法
378
查看次数

标签 统计

ruby ×1

ruby-on-rails ×1

sorting ×1

xslt ×1

xslt-1.0 ×1