我有一个长字符串,其中包含许多“合并字段”,所有合并字段将采用以下格式:<<FieldName>>
。
该字符串将具有多个不同类型的合并字段,即<<FirstName>>
,<<LastName>>
如何遍历字符串并找到所有合并字段,以便可以用文本替换该字段?
我不会知道字符串中所有不同的“合并”字段,用户可以在两个指示符之间输入任何内容,即 <<Anything>>
理想情况下,我想远离任何正则表达式,但乐于探索所有选择。
RegularExpression在这里最有意义
string text = "foo <<FieldName>> foo foo <<FieldName>> foo";
string result = Regex.Replace(text, @"[<]{2}\w*[>]{2}", "bar", RegexOptions.None);
UPDATE没有正则表达式-问题得到了更新后:
Dictionary<string, string> knownFields = new Dictionary<string, string> { {"<<FirstName>>", "Jon"}, {"<<LastName>>", "Doe"}, {"<<Job>>", "Programmer"}};
string text = "Hello my name is <<FirstName>> <<LastName>> and i work as a <<Job>>";
knownFields.ToList().ForEach(x => text = text.Replace(x.Key, x.Value));
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句