正则表达式(提取键/值对)



我试图从字符串中提取键/值对的列表(匹配)。例:

PATH_1:"/", PATH_2:"/OtherPath", TODAY:"2016-06-27",XYZ :"1234"

这应该得到:

<>之前价值PATH_1 /PATH_2 /OtherPath今天 2016-06-27XYZ 1234年之前

这是我到目前为止的regex:

((?:"[^"]*"|[^:,])*):((?:"[^"]*"|[^:,])*)

这是很好的工作,除了当我添加一个路径有一个''。例:

PATH_1:"c:", PATH_2:"c:OtherPath", TODAY:"2016-06-27" 

我不知道如何指示regex表达式在双引号序列中发现时跳过分号。希望有人能帮助我。

PS:我正在使用QT。

致以最诚挚的问候

https://regex101.com/r/vB1rS1/2

如果引号被删除,似乎只要从最后的[]中删除:就可以了。

((?:"[^"]*"|[^:,])*):((?:"[^"]*"|[^,])*)

相关内容

  • 没有找到相关文章

最新更新