在ruby 1.9.2中拆分字符串

Jee*_*gre 0 ruby ruby-on-rails ruby-on-rails-3.1

我有一个像这样的字符串

JINSAL0056(  1), JINSAL0057(  1), JINSAL0041(  1),
Run Code Online (Sandbox Code Playgroud)

我需要将JINSAL0056,JINSAL0057,JINSAL0041放在()中的字段和数字中.如果我朝着正确的方向前进,我已经写了几个代码让我知道.

s = "JINSAL0056(  1), JINSAL0057(  1), JINSAL0041(  1)"
ss = s.split(",")
sss = ss.split(" ( ")
Run Code Online (Sandbox Code Playgroud)

如何写分裂.请帮帮我吧

iai*_*ain 5

您也可以通过正则表达式进行拆分:

foo = "JINSAL0056(  1), JINSAL0057(  1), JINSAL0041(  1),"
foo.split(/[\(\),\s]+/)
Run Code Online (Sandbox Code Playgroud)

结果:

["JINSAL0056", "1", "JINSAL0057", "1", "JINSAL0041", "1"]
Run Code Online (Sandbox Code Playgroud)

并将其变成哈希:

Hash[*foo.split(/[\(\),\s]+/)]
Run Code Online (Sandbox Code Playgroud)

哪个会给你:

{"JINSAL0056"=>"1", "JINSAL0057"=>"1", "JINSAL0041"=>"1"}
Run Code Online (Sandbox Code Playgroud)