【问题标题】:Using more than one delimiter for .split method in Ruby在 Ruby 中为 .split 方法使用多个分隔符
【发布时间】:2014-11-26 14:24:14
【问题描述】:

我想在一行中通过";"" ""," 分隔符将字符串拆分为一个数组。有没有办法在不使用正则表达式的情况下做到这一点?

【问题讨论】:

  • 不,没有——为什么你不想使用正则表达式? <pedantry>你没有拆分数组。</pedantry>
  • 是什么阻止你不使用 regex
  • 拆分数组还是字符串?请举个例子。
  • @daremkd 当然是 string :-)
  • @DaveNewton 我对 Ruby 非常陌生,想知道是否有其他内置替代方法(除了正则表达式)来传递多个分隔符。

标签: ruby arrays split delimiter


【解决方案1】:

是的。可能但使用 regex

string.split(/[;, ]/)

【讨论】:

  • array.split(/[;, ]/)
  • @MarkThomas 是的.. 太好了!
  • @MarkThomas 我们没有方法Array#split.. :p
  • 那是因为array 变量包含一个字符串 ;) (oops)
  • 恢复良好,@MarkThomas。
【解决方案2】:

只需将分隔符替换为一个分隔符并在其上拆分。

p "aaa;bbb ccc,ddd".tr(";,"," ").split  #=> ["aaa", "bbb", "ccc", "ddd"]

【讨论】:

  • 爱它!这是一个非常聪明的解决方案。非常感谢!
  • @steenslag 哦,不知何故错过了 OP 中的内容:/
猜你喜欢
  • 2013-11-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-05-08
  • 2016-02-08
相关资源
最近更新 更多