1

捕获整个键值列表的 Java 正则表达式是什么(在下面的示例中以粗体显示)?

富吧k0=v0, k1=v1, k2=v2富吧

键和值不包含空格字符,,=.

我试过:(([^\s,=]+=[^\s,=]+),?)+at Regular Expression Test Page for Java,但它给了我个人等式组(k0=v0等)而不是整个字符串。这是为什么?我该如何解决?

4

2 回答 2

1

您的正则表达式不允许空格。如果您希望它也包含空格,则无法摆脱"foo bar"它(它将假定它是键或值的一部分)。如果您只想在逗号后允许空格,请尝试以下操作:

(([^\s,=]+=[^\s,=]+)(?:,\s*)?)+
于 2012-06-19T01:34:28.683 回答
1

像下面这样的东西会起作用:

([^=|^,|^\W]+)=([^,|^\W]+)
于 2012-06-19T02:10:23.087 回答