如何使用 C# 仅替换字符串中的特定单词?
How can I only replace a specific word in a string using C#?
我有一个字符串
var query = select id, Details.Id, Details.Info.Id from DetailsItem
我想用 [Details] 替换 Details,所以我正在使用
query.Replace(" Details", " [Details]");
我得到以下信息
select id, [Details].Id, [Details].Info.Id from [Details]Item
但它取代了我不想要的 DetailsItem。如果单词是 Details only,我该如何替换?
您应该使用带有单词边界的 Regex.Replace()
方法,即 \b
、
string queryResult = Regex.Replace(query, @"\bDetails\b", "[Details]", RegexOptions.None);
我有一个字符串
var query = select id, Details.Id, Details.Info.Id from DetailsItem
我想用 [Details] 替换 Details,所以我正在使用
query.Replace(" Details", " [Details]");
我得到以下信息
select id, [Details].Id, [Details].Info.Id from [Details]Item
但它取代了我不想要的 DetailsItem。如果单词是 Details only,我该如何替换?
您应该使用带有单词边界的 Regex.Replace()
方法,即 \b
、
string queryResult = Regex.Replace(query, @"\bDetails\b", "[Details]", RegexOptions.None);