我需要用一個字典中的相應值替換所有佔位符,如{text}
。用字典替換字符串c#
這是我的代碼:
var args = new Dictionary<string, string> {
{"text1", "name"},
{"text2", "Franco"}
};
saveText(Regex.Replace("Hi, my {text1} is {text2}.", @"\{(\w+)\}", m => args[m.Groups[1].Value]));
的問題是:如果輸入字符串文本不存在於字典,它拋出一個異常,但我寧願需要以字符串"null"
來替換佔位符。
你預計該鍵值可以包含有效的正則表達式的代碼?如果確實如此,那麼這種正則表達式替換將不起作用。 – Enigmativity
@Enigmativity爲什麼不呢? –
@LucasTrzesniewski - 嘗試在鍵和輸入字符串中用{text.1}替換'{text1}'。 OP代碼的結果變成'Hi,my {text.1}是Franco.'。 – Enigmativity