2012-05-14 43 views
0

我看起来像这样的字符串:去除串括号和数字用正则表达式

执行制片人(3)

监制(0)

1助理相机(12)

我想使用正则表达式来匹配字符串的第一部分,并删除“(num)”部分(括号前面的空格和括号中的括号/数字)。使用正则表达式后,我想让我的变量等于:“执行制作人”,“制作人”,“第一助理相机”

如果你知道任何学习正则表达式的资源,那也会很棒。

回答

0

你一定要选择除最后括号和他们的数字内容中的所有字符:

(.+) \(\d+\) 

前两个括号捕获的内容(在这里,所有的内容,由点声明)。然后,你需要两个括号(小心斜线),这意味着我们不希望这些括号捕捉“\ d +”表达式,这是一个数字。

我最喜欢的正则表达式的网站:http://www.regular-expressions.info/

+0

太棒了 - 完美的作品..感谢您的帮助和链接 – kcurtin

0

也许s/([\s\w]+\w)\s*\(\d+\)/\1/? 我不知道Ruby,所以你不得不将它翻译成它自己的regexp语法。

+0

是啊,那肯定能行。至少与JS ... – ubik