2015-11-11 297 views
-4

任何人能解释我为什么下面的表达式:正则表达式则表达式匹配的字符串

"(\\(.+\\)\\:[' ']?[-+]?[0-9]+\\.?[\\d]*[;]?)+" 

是匹配

(ABAS) ;(ABDS): 4.0; 

但不匹配

(ABDS): 4.0;(ABAS) ; 
+0

第一个字符串匹配'。+'到'ABAS);(ABDS'。如果将'。+'更改为'[^)] +',它可能会有所帮助。 – aioobe

+0

在第一种情况下,您是否知道'\(。+ \)'将匹配'(ABAS); (ABDS)'? – fge

回答

0

因为你明确地匹配:符号之后,但不是;符号