我认为这很简单,但这只是在踢我的屁股。
我有这个字符串21. A.Person
,我只是想A.Person
摆脱它。
我尝试以下但我只得到21
string[] pName = values[i, j].ToString().Split(new char[] { '.' }, 2);
pName[1] ???
values[i, j].ToString() = 21. A.Person
是的,我已经验证了这一点。
尝试这个:
var substr="";
var indedx = yourString.IndexOf('.');
if(index>-1)
substr = yourString.Substring(index);
substr=substr.Trim();
对于字符串“21.A.Person”应返回“A.Person”
当您的解决方案应该起作用时,每个人都会为您提供替代解决方案。问题是 values[i, j]不能相等21. A.Person
我把它插入一个简单的测试..
[Test]
public void junk()
{
string[] pName = "21. A.Person".Split(new char[] { '.' }, 2);
Console.WriteLine(pName[1]);
}
它打印什么?
A.Person
(前面有空间,因为你没有修剪空间)
我会将 substring() 与第一个 '.' 的位置一起使用。作为您的起点:
var name = sourceString.Substring(sourceString.IndexOf('.'));
尝试这样的事情:
var str = "21. A.Person";
var index = str.IndexOf('.') +1;
var substr = str.Substring(index, str.Length - index);
string pName = values[i, j].ToString().Substring(values[i, j].ToString().IndexOf('.')+1);