正在删除字符,c#

本文关键字:字符 删除 | 更新日期: 2023-09-27 17:59:37

全部,

我有从Sharepoint检索到的名称。这些名称以这种格式输出:

123;#David Putty
67;#Brian Star

这个数字是ID,我不知道如何删除前几个字符,包括#符号。

任何帮助都会很棒。

谢谢!

正在删除字符,c#

实现这一点的规范方法是

var spflv = new SPFieldLookupValue(yourString);
int intPart = spflv.LookupId;
string stringPart = spflv.LookupValue;

不要自己处理字符串;使用正确的Sharepoint类来完成。

如果你手头有相应的SPWeb,你甚至可以进行

var spfuv = new SPFieldUserValue(yourWeb, yourString);
int intPart = spfuv.LookupId;
string stringPart = spfuv.LookupValue;
SPUser user = spfuv.User;

但这并不是仅仅获取名称部分所必需的。

string name = input.Split('#')[1];

如果您正在编写Sharepoint解决方案,您可以使用SPFieldUserValue类,类似于:

new SPFieldUserValue(web, "123;#David Putty").User.Name

有很多方法可以完成这项琐碎的任务。

根据您的需要,我认为最简单的是:

string[] fields = s.Split(';');

其中s包含上述数据。这将分离出三个字段。

除此之外,有关提取字符串任何部分的方法,请参见String.Substring()

对于单行,可以使用Substring和IndexOf:

string line = "123;#David Putty";
line = line.Substring(line.IndexOf("#") + 1)

;拆分字符串并返回第二项:

string[] array = yourString.Split(';'); //yourString = 123;#David Putty
string whatYouWant = array[1];          //#David Putty