Ruby正则表达式删除除名称之外的所有内容;示例gem_name(abcd-123)

时间:2012-04-26 17:28:07

标签: ruby regex

我正在做一个安装所有宝石的小脚本,我做到了,但我对此有疑问;

包含宝石列表的文件如下所示:  适配器(0.5.2)  do_sqlite3(0.10.8 x86-mingw32)

和其他许多人。如果我从脚本读取,我可以做foo.gsub / [^ a-zA-Z] /,''删除数字。但随后它从宝石名称中移除了数字,我在括号内留下了字母。所以我想要一个正则表达式删除除了宝石名称之外的所有东西。任何帮助或链接都可以。

TNX

1 个答案:

答案 0 :(得分:1)

所以,我的第一个问题是关于你安装宝石列表的目标。可能已经有一个工具可以解决您的潜在问题。 (bundler?)

可能有效的正则表达式是删除括号括起来的字符串部分:/\([^\)]*\)/

> "adapter (0.5.2) do_sqlite3 (0.10.8 x86-mingw32)".gsub /\([^\)]*\)/, ''
=> "adapter  do_sqlite3 "