各位兄弟:
        如何查找指定匹配字符串比如: 中华人民(共和国),只显示含有“中华人民”字符串,但不包括“中华人民共和国”的所有匹配字符串呢?
       正则表达式该怎样写? 谢谢回答。

解决方案 »

  1.   

    Regex reg = new Regex("(?<text>中华人民)");
    Match m = reg.Match(" 中华人民(共和国)");
    Console.WriteLine(m.Groups["text"].Value);
      

  2.   

    中华人民(?!共和国)是正解。因为对于网网中华人民网网中华人民 (共和国)中华人民共和国,中华人民\b中华人民\b 只能匹配最后一个“中华人民”
    (?<text>中华人民)则四个都匹配了,只有“中华人民(?!共和国)”匹配第一个,第二个,第四个。故这个是正解我们也可以看看(?!regex)的用法:Zero-width negative lookahead. Identical to positive lookahead, except that the overall match will only succeed if the regex inside the lookahead fails to match.
      

  3.   

    实验证明:qileroro(其乐融融) 的写法是对了,谢谢大家指教分数太少了,都给 qileroro(其乐融融) 吧