先通过indexof获取百度的索引,如果有多个百度则通过递归方式从前往后找
找到第一个百度后,就可以把从0到第一个百度位置的内容取出来
然后继续判断是否有第二个百度,再把从上一个百度的索引和百度字符长度的和为起始位置,第二个百度为止位置取出第二段非百度文字,使用substring函数
后面依次类推,可写一个迭代方法实现
变色要看你在哪里用,如果是网页上,就把百度的前后加标签,并给标签的样式赋font-color样式
如果是winform中的textbox就没办法变色了,richbox可以变色,请查阅相关代码
string s = "这里就是百度了hkfdsk";
string getstr = "";
string[] array = s.Split(new string[] { "百度" }, StringSplitOptions.RemoveEmptyEntries);
for (int i = 0; i < array.Length; i++)
{
getstr += array[i];
}
至少样式百度变色,六级神仙说的就是那样子.....他的想法不错.
假设环境是 ASP.NET (C#)
string text = "这里就是百度了hkfdsk";
int pos = text.IndexOf("百度");
if(pos >= 0)
{
string leftText = text.SubString(0, pos);//左边字
string rightText = string.Empty;
if(text.Length > (pos+2))//如果右侧有字
rightText = text.SubString(pos+2);//右边字
Response.Write(leftText + "百度" + rightText);
}
else
{
Response.Write(text);
}