c#中如何截取指定字符串以及旁边的几个字
如我要找的关键字是"百度"两个字我怎么把"这里就是百度了hkfdsk"中的"百度"旁边的几个取出来并把"百度"两个字变成红色...
如我要找的关键字是"百度"两个字我怎么把"这里就是百度了hkfdsk"中的"百度"旁边的几个取出来并把"百度"两个字变成红色
展开
3个回答
展开全部
先通过indexof获取百度的索引,如果有多个百度则通过递归方式从前往后找
找到第一个百度后,就可以把从0到第一个百度位置的内容取出来
然后继续判断是否有第二个百度,再把从上一个百度的索引和百度字符长度的和为起始位置,第二个百度为止位置取出第二段非百度文字,使用substring函数
后面依次类推,可写一个迭代方法实现
变色要看你在哪里用,如果是网页上,就把百度的前后加标签,并给标签的样式赋font-color样式
如果是winform中的textbox就没办法变色了,richbox可以变色,请查阅相关代码
找到第一个百度后,就可以把从0到第一个百度位置的内容取出来
然后继续判断是否有第二个百度,再把从上一个百度的索引和百度字符长度的和为起始位置,第二个百度为止位置取出第二段非百度文字,使用substring函数
后面依次类推,可写一个迭代方法实现
变色要看你在哪里用,如果是网页上,就把百度的前后加标签,并给标签的样式赋font-color样式
如果是winform中的textbox就没办法变色了,richbox可以变色,请查阅相关代码
追问
我是在sql中找到%百度%怎样在把百度旁边的字取出呢?(代码)谢谢
展开全部
string s = "这里就是百度了hkfdsk";
string getstr = "";
string[] array = s.Split(new string[] { "百度" }, StringSplitOptions.RemoveEmptyEntries);
for (int i = 0; i < array.Length; i++)
{
getstr += array[i];
}
至少样式百度变色,六级神仙说的就是那样子.....他的想法不错.
string getstr = "";
string[] array = s.Split(new string[] { "百度" }, StringSplitOptions.RemoveEmptyEntries);
for (int i = 0; i < array.Length; i++)
{
getstr += array[i];
}
至少样式百度变色,六级神仙说的就是那样子.....他的想法不错.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2011-12-17
展开全部
假设环境是 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 + "<span style=\"color:red;\">百度</span>" + rightText);
}
else
{
Response.Write(text);
}
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 + "<span style=\"color:red;\">百度</span>" + rightText);
}
else
{
Response.Write(text);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询