【问题标题】:Best way to extract the relevant info from String?从字符串中提取相关信息的最佳方法?
【发布时间】:2012-03-18 08:59:54
【问题描述】:

我有一个字符串数组,在创建新类时应该用作约束。

它们看起来像这样:

constraint :name, 'name.size > 0'
constraint :name, 'name =~ /^[A-Z]/'

如您所见,它们由将成为属性的“名称”组成(并且将具有获取/设置它所持有的值的方法)

约束本身是有效的红宝石布尔值。

从这些字符串中获取所需信息并在方法中实现它们的最佳方法是什么?

到目前为止,我正在尝试切断字符串,如下所示:

y = String.index("'")
x = String.length
newstr = String[x,y]

等等,但这真的让我感觉比现在更难了..

【问题讨论】:

  • 你必须具备元编程能力。
  • 你应该接受一些答案。它使人们更有动力回答您的问题。
  • 对不起,我真的很陌生。 Ruby 和 stackoverflow..

标签: ruby arrays substring


【解决方案1】:

不同的方式

a = "abcd'hijk"

a.split("'").last  #=> hijk

a[a.index("'")+1 .. -1] #=> hijk

a =~ /'(.+)$/
puts $1 #=> hijk

【讨论】:

    【解决方案2】:

    试试Split 方法。如果您只想要 ' 之后的信息,请像这样使用它:

    username = "abcd'hijk"      => "abcd'hijk"
    username.split("'").last    => "hijk"
    

    【讨论】:

    • 但是我仍然必须获得索引位置才能这样做..?
    • 我添加了一个示例以使其更易于理解。如果这仍然没有帮助,请告诉我。
    • 啊,'.last'.. 非常感谢。 :)
    猜你喜欢
    • 1970-01-01
    • 2014-02-16
    • 2012-02-09
    • 1970-01-01
    • 2011-11-21
    • 2010-09-10
    • 1970-01-01
    • 2015-01-25
    相关资源
    最近更新 更多