【发布时间】:2016-01-22 09:52:46
【问题描述】:
我很难找到正确的模式来获得我想要的字符串。
我的起始字符串是:
,,,,C3:,D3,E3,F3,,
我想拥有
C3: [D3,E3,F3]
- 我想用双空格替换每个起始逗号
- 用双空格和左方括号替换冒号后的逗号
- 用右方括号替换尾随逗号
现在,我尝试了这个:
> a = ",,,,C3:,D3,E3,F3,,"
=> ",,,,C3:,D3,E3,F3,,"
> b = a.gsub(/^,*/, " ").gsub(/(?<=:),/, " [").gsub(/[,]*$/,"" ).gsub(/[ ]*$/, "]")
=> " C3: [D3,E3,F3]"
> b == " C3: [D3,E3,F3]"
=> false
在这种情况下,我无法将每个起始逗号替换为双空格以获得 8 个空格。
您能帮我找到正确的正则表达式吗?如果可能的话,请改进我的代码?
【问题讨论】:
标签: ruby-on-rails ruby regex gsub