c#中如何截取指定字符串以及旁边的几个字

如我要找的关键字是"百度"两个字我怎么把"这里就是百度了hkfdsk"中的"百度"旁边的几个取出来并把"百度"两个字变成红色... 如我要找的关键字是"百度"两个字我怎么把"这里就是百度了hkfdsk"中的"百度"旁边的几个取出来并把"百度"两个字变成红色 展开
 我来答
_神__仙_
2011-12-16 · TA获得超过1257个赞
知道小有建树答主
回答量:806
采纳率:0%
帮助的人:529万
展开全部
先通过indexof获取百度的索引,如果有多个百度则通过递归方式从前往后找
找到第一个百度后,就可以把从0到第一个百度位置的内容取出来
然后继续判断是否有第二个百度,再把从上一个百度的索引和百度字符长度的和为起始位置,第二个百度为止位置取出第二段非百度文字,使用substring函数
后面依次类推,可写一个迭代方法实现
变色要看你在哪里用,如果是网页上,就把百度的前后加标签,并给标签的样式赋font-color样式
如果是winform中的textbox就没办法变色了,richbox可以变色,请查阅相关代码
追问
我是在sql中找到%百度%怎样在把百度旁边的字取出呢?(代码)谢谢
爱在石亭后44
2011-12-17
知道答主
回答量:42
采纳率:0%
帮助的人:17.6万
展开全部
string s = "这里就是百度了hkfdsk";
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);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式