C# 一长串字符包含N个相同的特殊字符,截取第3个特殊字符前的字符串

例如13<-32<-312<-54<-313,我要去前3个,那就是13<-32<-312,求大神给个简单易懂的方法... 例如13<-32<-312<-54<-313,我要去前3个,那就是13<-32<-312,求大神给个简单易懂的方法 展开
 我来答
tonalilili
2014-12-25 · TA获得超过1.6万个赞
知道大有可为答主
回答量:8050
采纳率:71%
帮助的人:3076万
展开全部
string s=str.Substring(index);//从str里的第index号位置开始,截取往后面的字符串(包括第index号元素在内

那你现在就要取得 “<”号的位置索引index就可以了。

int index = str.IndexOf("屌");//在str中搜索"屌",返回第一个匹配项的位置索引号。若不存在,返回值为-1
int index1 = str.IndexOf("屌", 2);//str中从第2号元素位置开始(第2号元素也属于搜索范围),搜索"屌"
int index2 = str.IndexOf("屌", 2, 3);//str中从第2号元素位置开始搜索“屌”,搜索长度为3,即搜索第2、3、4号位置。
int index3 = str.LastIndexOf("屌");//str中str中“屌”最后一次出现的位置索引号。
libra10cn
2014-12-25 · 超过50用户采纳过TA的回答
知道小有建树答主
回答量:100
采纳率:0%
帮助的人:72.1万
展开全部
SourceString为源字串,DestString是结果字串

string[] SplitedString = SourceString.Split(Convert.ToChar("<"));
DestString=SplitedString[0]+"<"+ SplitedString[1]+"<"+ SplitedString[2];
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2014-12-25
展开全部
string ss = "13<-32<-312<-54<-313";
string[] splitArr = ss.Split('<'); //以<号分隔字符串,返回string数组
string newStr = splitArr[0] + "<" + splitArr[1] + "<" + splitArr[2];//取出前3个
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友6bbfdab
推荐于2018-03-26 · 超过68用户采纳过TA的回答
知道小有建树答主
回答量:100
采纳率:0%
帮助的人:108万
展开全部
string str = "13<-32<-312<-54<-313";//原始字符
string[] arr = str.Split('-');//分割数组
string outstr = "";//你要的字符
for (int i = 0; i < arr.Length; i++)
{
if (i < 3)
{
outstr += arr[i] + "-";
}
}
outstr = outstr.Substring(0, outstr.Length - 1);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
alven_lee
2014-12-25 · 超过34用户采纳过TA的回答
知道答主
回答量:128
采纳率:0%
帮助的人:54万
展开全部
const string flag = "<-";
string[] x = split(flag);
string y = x[0] + flag + x[1] + flag + x[2];
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式