如何将string拆分成两个部分与Ruby中给定的字符?

我们的应用程序是从使用Twitterlogin的人挖掘名称。

Twitter在一个string中提供全名。

例子

1. "Froederick Frankenstien" 2. "Ludwig Van Beethoven" 3. "Anne Frank" 

我想根据find的第一个" " (空格)将string分成只有两个variables( firstlast )。

 Example First Name Last Name 1 Froederick Frankenstein 2 Ludwig Van Beethoven 3 Anne Frank 

我熟悉String#split但我不知道如何只拆分一次。 Ruby-Way™(优雅)答案将被接受。

string#拆分需要第二个参数,限制。

 str.split(' ', 2) 

应该做的伎俩。

 "Ludwig Van Beethoven".split(' ', 2) 

第二个参数限制你想要分成的数字。

你也可以这样做:

 "Ludwig Van Beethoven".partition(" ") 

.split()的第二个参数指定要做多less个分割:

 'one two three four five'.split(' ', 2) 

而输出:

 >> ruby -e "print 'one two three four five'.split(' ', 2)" >> ["one", "two three four five"] 

替代scheme:

  first= s.match(" ").pre_match rest = s.match(" ").post_match