在字符串中获取自定义标记的优雅方式
本文关键字:方式 字符串 获取 自定义 | 更新日期: 2023-09-27 18:09:06
这里有一些优雅的方法来获取和替换字符串中的自定义标签吗?
例如
"some long text [o:prop] and [u:date]"
结果数组:
- "[o道具):"
- "[u:日期]"
谢谢
@"'[[a-z]:[a-z]{4}']"
假设1个小写字符后面跟着一个冒号,后面跟着四个小写字符,它们都由方括号括起来。
是。使用正则表达式
http://www.regular-expressions.info/阅读。学习。适用。
这总是有风险的,但你可以使用一些正则表达式,如:
"''[(.*?)]"
与全局修饰符。
Safer: ''[(o:prop|u:date)]
Try
var replacements = new Dictionary<string,string> {
{"[o:prop]","FISH"},
{"[u:date]","2013-04-12"}
};
var testString = "some long text [o:prop] and [u:date]";
var result= new Regex(@"'[[^[]*?]").Replace(
testString,
match => replacements.ContainsKey(match.Value) ? replacements[match.Value] : match.Value);