给出如下字符串:
randomstring1-randomstring2-3df83eeff2
如何使用红宝石正则表达式或其他一些ruby / rails友好方法查找所有内容直到第一个破折号 -
在上面的例子中,它将是: randomstring1
由于
答案 0 :(得分:43)
您可以使用此模式:^[^\-]*
答案 1 :(得分:9)
mystring = "randomstring1-randomstring2-3df83eeff2"
firstPart = mystring[0, mystring.index("-")]
否则,我认为最好的正则表达式是@ polishchuk's。
它从字符串的开头匹配,尽可能多地匹配任何非短划线-
。
答案 2 :(得分:6)
使用irb你也可以这样做:
>> a= "randomstring1-randomstring2-3df83eeff2"
=> "randomstring1-randomstring2-3df83eeff2"
>> a.split('-').first
=> "randomstring1"
>>
答案 3 :(得分:2)