On 11/23/2011 12:43 PM, Brad King wrote: > On 11/23/2011 12:34 PM, Alexandru Ciobanu wrote: >> The regex in question is: >> ^[^][:/*?]+\$ >> >> And it appears at this location in the ITK source tree: >> CMake/ExternalData.cmake:347 >> >> And the expression is correct, because you're allowed to have the ] >> metacharacter inside a [^xyz] class if it comes immediately after ^. > > Ironically I was the one that wrote that regex ;) > >> TRE does not do it the same way, see >> (http://laurikari.net/tre/documentation/regex-syntax/ the "Bracket >> expressions" section):
Wait, that documentation does say the same thing: bracket-expression ::= "[" item+ "]" | "[^" item+ "]" "To include a literal ] in the list, make it either the first item" That's exactly what this regex does. It uses the second production rule in the above grammar fragment and puts the ']' first after '^'. -Brad -- Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Follow this link to subscribe/unsubscribe: http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-developers