1

正则表达式模式

/("[^:=,]+":")(.*?)("}*\]*}*,")/

细绳 :

"foo":""fooooooooooooooooooo"foooo","bar":"barrrrrrrrr""barrrrrr","fooo":"foooooo","bar":"barrrrrr","

匹配第一个和第三个模式

http://rubular.com/r/S5fbsSfCjy

细绳:

"bar":"barrrrrrrrr""barrrrrr","fooo":"foooooo","bar":"barrrrrr","foo":""fooooooooooooooooooo"foooo","

匹配第一个和第三个模式

http://rubular.com/r/hDfcBCkB2o

如何使它匹配所有 4 个模式匹配上面的任何字符串?

4

1 回答 1

1

那是因为,"您的正则表达式模式末尾的 使用了以下字符串中的引号。所以,不匹配。事实上,正则表达式只会匹配每个备用匹配字符串。

您需要使用前瞻:

/("[^:=,]+":")(.*?)("}*\]*}*(?=,"))/

http://rubular.com/r/6v2OjPtmVM

于 2013-10-07T20:12:48.443 回答