如果角色稍后存在,则忽略该角色的第一次出现

时间:2015-03-11 21:09:45

标签: c# .net regex

我试图了解如何在C#

中使用Regex实现“if then”

背景:我正在解析一个包含其中令牌的字符串,目前为了找到令牌,用户必须提供大括号格式,例如。

Some text {someToken} other text

使用以下正则表达式:

     [{](?<token>[^}]+)[}]"

我可以获得令牌someToken。现在我得到的新要求是应该允许用户输入大括号作为标记值,​​例如

Some text {{someToken}} other text

我得到的值是{someToken}。在C#Regex中是否有这样的东西:“如果我有一个大括号,后面还有另一个,忽略第一个。”?

1 个答案:

答案 0 :(得分:5)

你可以使用这个贪婪的正则表达式:

{(?<token>{?[^}]+}?)}

RegEx Demo