asp.net 找到子字符串 Indexof



我需要从以下字符串中获取 2 个子字符串 S1 和 S2 之前和之后@@token@@

Token = 15d7b736-d8f0-e711-b842-100ba9d19b04@@token@@131599776034855065
'/// To Get S1
S1 = Token.Substring(0, Token.IndexOf("@@token@@"))

S1 将为"15d7b736-d8f0-e711-b842-100ba9d19b04">

但我不确定如何获得 S2?S2 应为"131599776034855065">

任何帮助:)

尝试:

string s = "15d7b736-d8f0-e711-b842-100ba9d19b04@@token@@131599776034855065";
string str1 = s.Substring(0, s.IndexOf("@"));
string str2 = s.Substring(s.LastIndexOf("@")+1, s.Length -1 - s.LastIndexOf("@"));

或者另一种方法是根据@@token@@拆分字符串:

string[] strArr = s.Split(new string[] { "@@token@@" }, StringSplitOptions.None); 

str[0]="15d7b736-d8f0-e711-b842-100ba9d19b04"

str[1]="131599776034855065"

注意:

要拆分基于字符串的字符串,您应该使用拆分字符串数组重载。

使用 lastIndexOf() 方法获取。

string Token = "15d7b736-d8f0-e711-b842-100ba9d19b04@@token@@131599776034855065";
string delimiter = "@@token@@";
string S1 = Token.Substring(0, Token.IndexOf(delimiter));
string S2 = Token.Substring(Token.LastIndexOf(delimiter) + delimiter.Length, Token.Length - delimiter.Length - S1.Length );
Console.WriteLine(S1); // or print(s1)
Console.WriteLine(S2); //or print(s2)

最新更新