2
我想要一个正则表达式可以匹配一个组或两个组。这是一个看起来如何的例子。无论是这样的:正则表达式匹配一个或两个组或两者都
(键)
或者这样:
(密钥 “值”)
到目前为止,我想出了一个表达式与后面的例子匹配。但我不知道如何修改它,以便匹配第一个或后一个。那就是:
\((?P<property_key>[^() ]+) "(?P<property_value>[^"]*)"\)
我想要一个正则表达式可以匹配一个组或两个组。这是一个看起来如何的例子。无论是这样的:正则表达式匹配一个或两个组或两者都
(键)
或者这样:
(密钥 “值”)
到目前为止,我想出了一个表达式与后面的例子匹配。但我不知道如何修改它,以便匹配第一个或后一个。那就是:
\((?P<property_key>[^() ]+) "(?P<property_value>[^"]*)"\)
我相信你正在寻找的正则表达式模式
\((?P<property_key>\w+)(?:\s+"(?P<property_value>\w+)")?\)
哦!如何切割机解决方案,你想出了!非常感谢你,它解决了我所有的问题。愿这支部队与你同在,年轻的伙伴。 – Eric 2012-07-24 08:00:34
是'regex'这样做的(整个)正确的答案?为什么不简单匹配带括号的表达式,然后在空白处分割(x,1)'它们呢? – kojiro 2012-07-23 20:17:11