[英]string manipulation in regex
我在字符串操作上有问题
这是代码
string str = "LDAP://company.com/OU=MyOU1 Control,DC=MyCompany,DC=com";
Regex regex = new Regex("OU=\\w+");
var result = regex.Matches(str);
var strList = new List<string>();
foreach (var item in result)
{
strList.Add(item.ToString().Remove(0,3));
}
Console.WriteLine(string.Join("/",strList));
我得到的结果是“ MyOU1”,而不是“ MyOU1 Control”
请帮助谢谢
如果您还希望匹配空格字符,则需要在正则表达式中包括它。 \\w
仅匹配单词字符,不包含空格。
Regex regex = new Regex(@"OU=[\w\s]+");
这匹配单词字符( \\w
)和空格字符( \\s
)。
(字符串前面的@
只是为了方便:如果使用它,则不需要转义反斜杠。)
您可以在允许的列表中添加空格(\\ w不允许使用空格),或者使用逗号可以用作分隔符的知识。
Regex regex = new Regex("OU=(\\w|\\s)+");
要么
Regex regex = new Regex("OU=[^,]+");
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.