[英].NET Regex Grouping: Exclude String from group
当我在.NET中使用正则表达式时
(.+) (cb|b)
我有一个像“somestring cb”这样的字符串我总是在第一组中获得“somestring c”而在第二组中获得“b”。
我希望在第一组中获得“somestring”,在第二组中获得“cb”。
任何的想法?
一个简单的解决方案是通过在加号后添加问号使第一组不情愿,如下所示:
(.+?) (c b|b)
如果没有它,它将不会贪婪并且尽可能多地匹配有效字符,在您的情况下,这意味着匹配第一组中的c。
在括号内放置您想要匹配的内容,并在可接受的匹配项之间加上“或”符号。 例如,这个RegEx应该可以做到这一点:
(.+ b|b)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.