令牌替换和识别

时间:2011-11-30 22:23:29

标签: c# regex string

我需要完成以下内容并且不确定最佳方法。

以下面的字符串为例。

  

%%%% START %%%%

     

坐下来ipsum sagittis luctus eu id diam。 [%RC:3%] Morbi suscipit   iaculis accumsan。 Morbi laoreet consectetur nisl,luctus tempor felis   ultrices commodo。 Praesent dui augue,interdum non rutrum vel,   前庭坐在一个lorem。 Nam sit amet erat elit,et porta mi。   Vestibulum non urna magna。 Phasellus pharetra rutrum urna quis   tincidunt。 Duis metus quam,fermentum sed ultricies id,tincidunt id   存有。 [%RC:1%]

     

%%%% END %%%%

我需要做的是获取该字符串并首先找到“令牌”[%RC:(int)%]的所有出现,获取该令牌中包含的id(将用于查询数据)然后用新字符串替换整个标记。

我该怎么做?任何建议&指导会很棒。

1 个答案:

答案 0 :(得分:3)

假设您有一个可用于查找替换字符串的字典,请尝试使用MatchEvaluator的重载string result = Regex.Replace( text, @"\[%RC:(\d+)%\]", match => dict[int.Parse(match.Groups[1].Value)]);

{{1}}

查看在线工作:Regex.Replace

相关问题