我有一个形式的正则表达式:
/(something complex and boring)?(something complex and interesting)/
Run Code Online (Sandbox Code Playgroud)
我对第二个括号的内容感兴趣; 第一个只是为了确保正确的匹配(因为无聊的部分可能存在或可能不存在,但如果存在,我会偶然将它与正则表达式匹配到有趣的部分).
所以我可以使用$ 2访问第二场比赛.然而,为了与其他正则表达式的一致性,我正在使用我希望以某种方式$ 1将包含第二个parethesis的内容.可能吗?
这是一个非ruby regexp功能.使用/(?:something complex and boring)?(something complex and interesting)/(注意?:)来实现这一目标.
顺便说一下,在Ruby 1.9中,您可以/(something complex and boring)?(?<interesting>something complex and interesting)/使用$~[:interesting];)来访问该组