很簡單。迭代List中的所有字符串,然後檢查myString
是否包含該字符串。如果是,則更換它。
foreach (string item in lst)
{
if (myString.Contains(item))
{
myString = myString.Replace(item, string.Format("$${0}$$", item));
}
}
你也可以使用LINQ做相同的:用空格
lst.Where(item=> myString.Contains(item)).ToList()
.ForEach(item => myString = myString.Replace(item, string.Format("$${0}$$", item)));
您也可以分割字符串,並檢查他們的存在列表與否:
myString.Split(' ').ToList()
.Where(x => lst.Contains(x)).ToList()
.ForEach(item => myString = myString.Replace(item, string.Format("$${0}$$", item)));
案例insensivity:
變化Contains(x)
到Contains(x, StringComparer.OrdinalIgnoreCase)
。
例如第三種方法:
myString.Split(' ').ToList()
.Where(x => lst.Contains(x, StringComparer.OrdinalIgnoreCase)).ToList()
.ForEach(item => myString = myString.Replace(item, string.Format("$${0}$$", item)));
敢我問...你嘗試過什麼? –
@Bergkamp,不要在評論中發佈更多的細節,而是編輯你的問題。 –
你甚至沒有seacrh,沒有找到string.Contains()方法? – apomene