是否有Ruby gem或库提供解析序数的方法?

是否有Ruby gem或库提供解析序数的方法?,第1张

概述我正在寻找一种方法解析 Ruby中的序数(第一,第二,第三等)并将它们转换为整数.你知道有没有这样做的图书馆吗? 当我意识到 chronic gem作为解析日期过程的一部分时,我正在问这个问题.安装gem之后,您可以非常轻松地将序号转换为整数: irb(main):001:0> require 'chronic'=> trueirb(main):002:0> Chronic::Numeriz 我正在寻找一种方法来解析 Ruby中的序数(第一,第二,第三等)并将它们转换为整数.你知道有没有这样做的图书馆吗?解决方法 当我意识到 chronic gem作为解析日期过程的一部分时,我正在问这个问题.安装gem之后,您可以非常轻松地将序号转换为整数:

irb(main):001:0> require 'chronic'=> trueirb(main):002:0> Chronic::Numerizer.numerize("eighty-fifth").to_i=> 85

编辑:不幸的是,似乎慢性没有正确解析序数“第二”:

irb(main):003:0> Chronic::Numerizer.numerize("twenty-second").to_i=> 20

这样做的原因是,慢性被设计用于解析日期和时间,而“秒”可以是序数或在该上下文中的时间单位.要解决这个问题,你可以使用以下行修补慢性Numerizer类:

Chronic::Numerizer::ordinals.insert(1,['second','2'])

它现在有效:

irb(main):005:0> Chronic::Numerizer.numerize("eighty-second").to_i=> 82

如果您实际上使用慢性病来达到其预期目的,您可能不会想要使用其内部结构.在这种情况下,您可以将source code从Chronic :: Numerizer复制到一个新类中,然后使用该类.不要忘记将[‘second’,’2′]添加到新类中的ordinals常量.

总结

以上是内存溢出为你收集整理的是否有Ruby gem或库提供解析序数的方法?全部内容,希望文章能够帮你解决是否有Ruby gem或库提供解析序数的方法?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/1293936.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-10
下一篇 2022-06-10

发表评论

登录后才能评论

评论列表(0条)

保存