根据文本结尾将文本分为2部分

时间:2014-03-15 10:00:34

标签: regex

我有一个文字:

365 days (1)

并且想要使用正则表达式将它们分开作为不同的部分,文本的末尾总是一对括号和数字在里面,所以分隔后的不同部分应该是:'365天'和'(1)'。< / p>

我使用这个正则表达式并且它可以工作:

^([^(]+)[(]([0-9]+)[)]$

但是,如果我的第一部分包含一个括号,那么它就不起作用了:

36(5) days (1)

我希望它仍然分为'36(5)天'和'(1)'

请帮我修复这个正则表达式。

注意:我使用的是ASP / VBScript / VB6或C#/ VB.NET。

1 个答案:

答案 0 :(得分:0)

由于(\d)位于字符串的最后一位,因此在第一组中使用.*会为您完成。

^(.*)[(]([0-9]+)[)]$

您可以在两组之间使用\s+,以避免在第一组中选择尾随空格。