如何使用正则表达式捕获特殊字符后的值?

时间:2019-07-04 15:24:15

标签: regex

我需要从以下字符串中提取CN值:

CN=John Doe,OU=Testing,OU=Dev Workspace,OU=Product Domain,DC=it,DC=co

在此示例中,我在John Doe中追求的值。

(CN=)\w+\s\w+将匹配CN=John Doe (?<=CN=)[^,]+将与John Doe匹配,但我认为解析器不支持正向隐式。 CN=([^,]+)将与CN=John Doe相匹配,但John Doe将在第一组中。

2 个答案:

答案 0 :(得分:1)

只需使用

CN=([^,]+)

并使用第一个捕获组。参见a demo on regex101.com

答案 1 :(得分:0)

这是一个漫长的尝试,但是也许只是尝试\K(保持警惕)以查看是否可行,我对此表示怀疑:

CN=\K([^,]+)

Demo