C#中角色的权利

时间:2010-07-07 18:14:23

标签: c#

如何在C#中获得正确的(字符串)? if user =“MyDomain \ jKing” 我只想从上面的字符串jking。

      int index;
      string user;

    index = User.Identity.Name.IndexOf("\\");
    user = (index > 0 ? User.Identity.Name.Substring(0, index) : "");

4 个答案:

答案 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-beforesubstring-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));
   }
}