1

我认为这很简单,但这只是在踢我的屁股。

我有这个字符串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 是的,我已经验证了这一点。

4

5 回答 5

5

尝试这个:

var substr="";
var indedx = yourString.IndexOf('.');
if(index>-1)
   substr = yourString.Substring(index);
substr=substr.Trim();

对于字符串“21.A.Person”应返回“A.Person”

于 2013-07-23T12:49:07.457 回答
4

当您的解决方案应该起作用时,每个人都会为您提供替代解决方案。问题是 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 (前面有空间,因为你没有修剪空间)

于 2013-07-23T13:01:15.677 回答
2

我会将 substring() 与第一个 '.' 的位置一起使用。作为您的起点:

var name = sourceString.Substring(sourceString.IndexOf('.'));
于 2013-07-23T12:50:08.727 回答
1

尝试这样的事情:

  var str = "21. A.Person";
  var index = str.IndexOf('.') +1;
  var substr = str.Substring(index, str.Length - index);
于 2013-07-23T12:52:02.967 回答
1
string pName = values[i, j].ToString().Substring(values[i, j].ToString().IndexOf('.')+1);
于 2013-07-23T12:50:32.577 回答