如何在C#中获得正确的(字符串)? if user =“MyDomain \ jKing” 我只想从上面的字符串jking。
int index;
string user;
index = User.Identity.Name.IndexOf("\\");
user = (index > 0 ? User.Identity.Name.Substring(0, index) : "");
答案 0 :(得分:6)
string user = User.Identity.Name
user= user.Remove(0, user.IndexOf(@"\")+ 1);
答案 1 :(得分:4)
var user = User.Identity.Name;
var index = user.IndexOf("\\");
if (index < 0 || index == user.Length - 1)
{
user = string.Empty;
}
else
{
user = user.Substring(index + 1);
}
答案 2 :(得分:3)
User.Identity.Name.Split(@"\")[1]
答案 3 :(得分:1)
不妨让它重复使用。以下是XLST函数substring-before
和substring-after
之后的一些扩展方法,以使其成为通用的。
用法:var userNm = (User.Identity.Name.Contains(@"\") ? User.Identity.Name.SubstringAfter(@"\") : User.Identity.Name);
public static class StringExt {
public static string SubstringAfter(this string s, string searchString) {
if (String.IsNullOrEmpty(searchString)) return s;
var idx = s.IndexOf(searchString);
return (idx < 0 ? "" : s.Substring(idx + searchString.Length));
}
public static string SubstringBefore(this string s, string searchString) {
if (String.IsNullOrEmpty(searchString)) return s;
var idx = s.IndexOf(searchString);
return (idx < 0 ? "" : s.Substring(0, idx));
}
}