我在进行访问AD中的用户时候,获得了一个字符串,如下所示:
CN=XX,OU=XXXX,OU=XXXX,OU=XXXX,.........DC=XX,DC=XX,DC=XXOU指的是组织单元名称,根据在我AD中组织单元嵌套的深度不同,OU的数量就不同(简单地说就是像"AAAA/AAA/AA/A"这样,深度有可能不同)我现在想通过这个字符串做以下操作:
1.去掉CN=XX和所有DC=XX的字符
2.去掉“,”和“=”
3.把OU=后面的xx组成一个字符串,以下划线的形式串起来请大家帮帮忙,谢谢哦~
CN=XX,OU=XXXX,OU=XXXX,OU=XXXX,.........DC=XX,DC=XX,DC=XXOU指的是组织单元名称,根据在我AD中组织单元嵌套的深度不同,OU的数量就不同(简单地说就是像"AAAA/AAA/AA/A"这样,深度有可能不同)我现在想通过这个字符串做以下操作:
1.去掉CN=XX和所有DC=XX的字符
2.去掉“,”和“=”
3.把OU=后面的xx组成一个字符串,以下划线的形式串起来请大家帮帮忙,谢谢哦~
解决方案 »
- RS232远程连结问题
- WPF 双屏处理 初始化在副屏全屏显示
- 大家看看这个面试要求,会出什么题目呢
- 高分求教。sourcesafe中签出后产生的问题。
- textbox backcolor 换操作系统的时候 颜色不一致
- 关于.NET内存回收的问题?
- 关于dotmsn验证对方加入自己的问题
- Response.Redirect的问题
- 请教大虾 DataSet记录数组的问题
- 支线程 中的system.drawing 被占用
- C# 正则表达试字符串处理 会正则表达试的请进。。有答案马上揭贴
- 在while中使用 socket.Receive(data)时遇上网络繁忙程序就卡得不行,谁有好办法可以解决或怎么异步呢?
youstring.replace('=','')
youstring.replace('CN=XX','')
youstring.replace('DC=XX','')
试试应该行的
str=str.Replace("CN=XX", "");
str=str.Replace("DC=XX", "");
str=str.Replace (",OU=","_");
str = str.Replace(",", "");
str=str.TrimStart (' ');
str = str.TrimStart('_');
例如:
这样的字符串“CN=阿陈,OU=大学,OU=51班,OU=男生,DC=WWW,DC=AWEI,DC=COM”
转换成“大学_51班_男生”
//添加命名空间:
using System.Text.RegularExpressions;string s = "CN=XX,OU=XXXX,OU=XXXX,OU=XXXX,DC=XX,DC=XX,DC=XX";
//去掉CN=XX和所有DC=XX的字符
string result = Regex.Replace(s, @",?CN=\w+,?|,?DC=\w+,?", "", RegexOptions.IgnoreCase);
//把OU=后面的xx组成一个字符串,以下划线的形式串起来
result = Regex.Replace(result, @",?OU=", @"_", RegexOptions.IgnoreCase);//结果为:_xxxx_xxxx_xxxx