c# - 我很难对这些数据进行正则表达式以提取名称
问题描述
CN=Cal Sith/O=SEL,CN=Scot Shaf/O=SEL
字符串看起来像上面这样,我正在尝试提取名称(Cal Sith;Scot Shaf)并且可能有超过 2 组逗号分隔。
这与我得到的一样接近但错误:
((?:[A-ZA-Z=]+[^a-zA-Z'-]+){0,12})\/O=SEL
最终,我希望他们在一个
List<String> FullNames
解决方案
为了从以下字符串中获取名称:CN=Cal Sith/O=SEL,CN=Scot Shaf/O=SEL
试试下面的片段:
string sPattern = @"(?:[a-z=]+)=(?<Name>[a-z\s]+)\/O=SEL";
Regex oRegex = new Regex(sPattern,RegexOptions.IgnoreCase);
string sInput = "CN=Cal Sith/O=SEL,CN=Scot Shaf/O=SEL";
List<string> FullNames = new List<string>();
foreach (Match oData in oRegex.Matches(sInput))
{
FullNames.Add(Convert.ToString(oData.Groups["Name"]));
}
推荐阅读
- c# - 使用 RestSharp 反序列化 JSON
- reactjs - 在 React 中使用画布的问题
- typescript - Angular V9 异步管道不更新数据更改的模板视图
- python - 实际意义上的多维数组中的维度是什么
- java - spring-boot休眠事务管理器即使在运行时异常也不会回滚事务
- javascript - 在jQuery中获取选定的单选按钮和复选框十进制值
- java - WebFlux 中的多线程输出错误
- python - Python:Pandas 使用其独特的表标题读取特定的 html 表
- python - 如何根据特定元素的存在对python字典进行切片
- java - Java printf:如何通过转换隐式定义/声明空格?