Skip to main content
 首页 » 编程设计

c#之正则表达式匹配不正确的值

2024年01月18日37softidea

我正在使用C#。我需要正则表达式来检查这样的文本:

abc {val2:123} lorem ipsum {val1:234} 


我需要匹配所有的{x:y}。我已经尝试过正则表达式{。*},但它与整个值匹配-“ {val2:123} lorem ipsum {val1:234}”。当然,这不好玩。

如何正确更改我的正则表达式?

请您参考如下方法:

\{([^}]*)\} 


这匹配一个 {后跟零个或多个不是 }的字符,然后匹配一个文字 },它将匹配的所有内容放入组1。

然后,您可以在冒号 :上拆分捕获的组,以获取键和值对。

Regex101 Demo