我有一个需求,我需要标记用逗号分隔的键=值对列表。例:$val1=abc, $val2=cde, $val3=efg
期望输出:6个token
- val1美元abc val2美元
- cde val3美元
- efg
我正在使用解决上述问题的正则表达式([^" =,]*("[^"]*")[^" =,]*)|[^" =,]+
。但是,当key=value对的值中有逗号时,它不处理这种情况。
Ex: $val1=abc,AB, $val2=cde, $val3=efg
期望输出:6个token
- val1美元
- abc, AB val2美元
- cde
- val3美元
- efg
但是使用上面的正则表达式,我得到的输出如下所示:输出:7个token
- val1美元abc
- AB val2美元
- cde val3美元
- efg
谁能提供一个合适的正则表达式适合上面的情况
[^= ]+(?! $)
实际操作
读取任意数量的字符,这些字符不是=
或空格,并且后面没有空格和$
。