2014-11-14 40 views
0

我想知道是否有人能帮助我用正则表达式我需要使用在格式"4%,6%,8%,9%" "(Number)(Percentage)(comma)(number)(percentage)....N"要求对于Java正则表达式的字符串

我努力让这一个^[\d*(?:%),]+$但其匹配的格式"4%,2,6,5%"匹配字符串(数字没有百分比辛博尔)。

在此先感谢!

+0

应该是这样的:^ \ d +%(?:,\ d +%)+ $ – StackFlowed 2014-11-14 13:17:48

+0

'[]'是一个字符类,使用'()'分组 – 2014-11-14 13:19:38

+0

您可以使用这个很酷的资源:http:// www.txt2re.com – MihaiC 2014-11-14 13:38:35

回答

2

改变你的正则表达式如下图所示,

^\d+%(?:,\d+%)+$ 

(?:,\d+%)+允许此,<number>%格式的一个或多个字符串。

OR

^\d+%(?:,\d+%)*$ 

(?:,\d+%)*允许此,<number>%格式的零个或多个字符串。

+0

这是一个相当快的答案,非常感谢! – 2014-11-14 13:24:35

+0

欢迎来到Stack Overflow。我建议你阅读[this](http://stackoverflow.com/help/accepted-answer)。 – 2014-11-14 13:25:58