ASP.NET中如何用IndexOf获取@@token@@前后的两个子串S1和S2?
如何获取@@token@@后的子串S2
嘿,你已经搞定了S1的获取,那S2其实也很简单,给你两种常用的方法,选你觉得顺手的就行:
方法一:继续用Substring + IndexOf
既然你已经用IndexOf找到了分隔符的起始位置,那只需要再加上分隔符本身的长度,就能从分隔符结束的位置开始截取到字符串末尾啦:
string Token = "15d7b736-d8f0-e711-b842-100ba9d19b04@@token@@131599776034855065"; string separator = "@@token@@"; int separatorStartIndex = Token.IndexOf(separator); // 先判断是否找到分隔符,避免报错 if (separatorStartIndex != -1) { string S2 = Token.Substring(separatorStartIndex + separator.Length); // 此时S2就是你要的'131599776034855065' } else { // 这里可以处理字符串中没有分隔符的情况,比如给S2赋值为空或者抛出提示 }
方法二:用Split分割字符串
这种方法更简洁,直接把字符串按分隔符拆分成数组,取数组的第二个元素就好:
string Token = "15d7b736-d8f0-e711-b842-100ba9d19b04@@token@@131599776034855065"; string separator = "@@token@@"; string[] tokenParts = Token.Split(new string[] { separator }, StringSplitOptions.None); // 同样要检查分割后的数组长度,防止索引越界 if (tokenParts.Length >= 2) { string S2 = tokenParts[1]; // 拿到目标S2 } else { // 处理无分隔符的异常情况 }
两种方法都能轻松得到你想要的S2,推荐第二种,代码更简洁易读~
内容的提问来源于stack exchange,提问作者Geo Concepts
相关产品推荐
相关产品推荐

