抱歉,新手question...It似乎在一个正则表达式中提供了两个不同的函数。一个用于分组,另一个用于提取字符串(例如,a(.*)z提取'a‘和'z’字符之间的字符串)。在要提取的表达式中,如何对表达式进行分组?正则表达式解释器不会将这两组括号都解释为提取吗?在执行提取的正则表达式中,如何包含分组操作?希望这是有意义的。
发布于 2012-02-11 02:14:45
取决于正则表达式的风格(语言),但在大多数重要的风格(*)中,(?:会启动一个“非捕获组”,)照常结束它。也就是说。
(?:abc|cba)(.+)将匹配"abc“或"cba”后跟1个或多个任意字符,并且仅捕获(“提取”)这些任意字符。
*)当我说“最重要的”时,这意味着除了POSIX和GNU之外的任何东西。例如,.NET,Javascript,Java,Python,Ruby.perl,PHP等等。一个重要的不支持的版本是XPath (和XML Schema)。
https://stackoverflow.com/questions/9232334
复制相似问题