问题描述
||
我有一个字符串
伊山,培训
我想在\“,\”之后分割字符串,即我希望输出为
训练
注意:\“,\”没有固定的索引,因为\“,\”之前的字符串值在不同的时间是不同的。
例如ishant,marcela OR ishu,ponda OR amnarayan,mapusa等...
从以上所有字符串中,我只需要\“,\”之后的部分
解决方法
您可以使用
String.Split
:
string[] tokens = str.Split(\',\');
string last = tokens[tokens.Length - 1]
或者,更简单一些:
string last = str.Substring(str.LastIndexOf(\',\') + 1);
,var arr = string.Split(\",\");
var result = arr[arr.length-1];
,sourcestring.Substring(sourcestring.IndexOf(\',\'))
。对于不带,
的字符串,您可能要为-1
检查sourcestring.IndexOf(\',\')
。
,我知道这个问题已经回答了,但是您可以使用linq:
string str = \"1,2,3,4,5\";
str.Split(\',\').LastOrDefault();
,使用ѭ9将结果分配到字符串数组中并使用所需的内容。
,这是VB版本。我敢肯定,它很容易翻译成C#
Dim str as string = \"ishan,training\"
str = str.split(\",\")(1)
return str
,尽管有几条评论提到发现多个逗号的问题,但似乎没有提及解决方案:
string input = \"1,5\";
if (input.IndexOf(\',\') > 0)
{
string afterFirstComma = input.Split(new char[] { \',\' },2)[1];
}
这将使afterFirstComma
等于\“ 2,5 \”