我有两个字符串:
1 string =“stackoverflow”
2 string =“stackoverflow很好”
我想要显示:“stackoverflow is good
”。
“很好”应该用一些背景颜色突出显示..
如何使用c#?
答案 0 :(得分:5)
首先格式化高亮颜色中的所有文本,然后搜索“stackoverflow”并将其格式化回正常格式。通过这种方式,您不必弄乱查找某些内容而是格式化其他内容的问题。
有关技术细节,我必须知道,您使用什么样的控件来显示文本(Textbox,Rtf,Html)。
static void Main(string[] args)
{
string strComplete = "stackoverflow is good, I mean, stackoverflow is really good";
string strSearch = "stackoverflow";
Console.WriteLine(FormatString(strComplete, strSearch));
Console.ReadKey();
}
private static string FormatString(string strComplete, string strSearch)
{
string strSpannedSearch = string.Format("{0}{1}{2}", "", strSearch, "");
return strComplete.Replace(strSearch, strSpannedSearch);
}
答案 1 :(得分:1)
您可以尝试这些方面的内容
string s1 = "Hello";
string s2 = "Hello world";
s2= s2.Replace(s1, "");
Bitmap bmap = new Bitmap(150, 25);
Graphics graphic = Graphics.FromImage(bmap);
graphic.DrawString(s1, new Font(FontFamily.GenericSerif, 8), new SolidBrush(Color.White), new PointF());
graphic.DrawString(s2, new Font(FontFamily.GenericSerif, 8), new SolidBrush(Color.Yellow), new PointF());
bmap.Save("myimage.jpg", System.Drawing.Imaging.ImageFormat.Jpeg);