需要C#Regex才能在句子中获得单词对

前端之家收集整理的这篇文章主要介绍了需要C#Regex才能在句子中获得单词对前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
是否有正则表达式将采取以下句子:

“我想把它分成两对”

生成以下列表:

“我想要”,
“想要这个”,
“这种分裂”,
“分开”,
“进入”,
“成对”

解决方法

由于需要重复使用单词,因此需要先行断言:
Regex regexObj = new Regex(
    @"(     # Match and capture in backreference no. 1:
     \w+    # one or more alphanumeric characters
     \s+    # one or more whitespace characters.
    )       # End of capturing group 1.
    (?=     # Assert that there follows...
     (\w+)  # another word; capture that into backref 2.
    )       # End of lookahead.",RegexOptions.IgnorePatternWhitespace);
Match matchResult = regexObj.Match(subjectString);
while (matchResult.Success) {
    resultList.Add(matchResult.Groups[1].Value + matchResult.Groups[2].Value);
    matchResult = matchResult.NextMatch();
}

对于三人组:

Regex regexObj = new Regex(
    @"(     # Match and capture in backreference no. 1:
     \w+    # one or more alphanumeric characters
     \s+    # one or more whitespace characters.
    )       # End of capturing group 1.
    (?=     # Assert that there follows...
     (      # and capture...
      \w+   # another word,\s+   # whitespace,\w+   # word.
     )      # End of capturing group 2.
    )       # End of lookahead.",RegexOptions.IgnorePatternWhitespace);

等等

猜你在找的C&C++相关文章