【发布时间】:2011-08-14 02:21:22
【问题描述】:
作为一名 Ruby 程序员,您是否觉得任何使用起来有点风险的功能,可能是因为它的奇怪行为?它可能有据可查,但在调试时很难找到,或者有悖常理?
我通常尽量远离String#gsub!。文档说“执行 String#gsub 的替换,如果没有执行替换,则返回 str 或 nil。”因此,如果没有什么可替代的,那么它将返回 nil。实际上,我没有看到任何可以派上用场的用例。
那么,根据您的经验,您还有什么要补充的吗?
【问题讨论】:
-
gsub!不会 如果没有执行替换,则用nil覆盖字符串值。它只会返回nil. -
!?!作为false关键字的替代品;) -
% space\ as\ a\ quote\ character -
@Mladen Jablanović,是的,没错。我已经更正了语言。
-
更好地定义“风险”。与燃烧地球大气层相比,我在 Ruby 中看到的任何东西都没有让我感到害怕,据传这与曼哈顿项目有关。除非您正在编写极其敏感的程序,否则您不太可能对 Ruby 造成任何伤害,并且此时您将非常清楚这些问题。如果你只是在学习,我不会担心。
标签: ruby