所有
我有从Sharepoint检索的名称。我们以这种格式输出这些名称:
123;#David Putty
67;#Brian Star
该号码是ID,我不知道如何删除前几个字符,包括#符号。
任何帮助都会很棒。
谢谢!
答案 0 :(得分:2)
执行此操作的规范方法是
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;
但是没有必要只获取名称部分。
答案 1 :(得分:1)
string name = input.Split('#')[1];
答案 2 :(得分:1)
如果您正在编写Sharepoint解决方案,则可以使用SPFieldUserValue类,例如:
new SPFieldUserValue(web, "123;#David Putty").User.Name
答案 3 :(得分:0)
有很多方法可以完成这项琐碎的工作。
根据您的需要,我认为最简单的是:
string[] fields = s.Split(';');
s
包含上述数据的位置。这将把这三个领域分开。
除此之外,请参阅String.Substring()
了解提取字符串任何部分的方法。
答案 4 :(得分:0)
用;
拆分字符串并返回第二项:
string[] array = yourString.Split(';'); //yourString = 123;#David Putty
string whatYouWant = array[1]; //#David Putty
答案 5 :(得分:0)
对于单行,您可以使用Substring和IndexOf:
string line = "123;#David Putty";
line = line.Substring(line.IndexOf("#") + 1)