[英]Regular expression group matching in .NET
我有這個字符串:
of cabbages and kings and more kings
我要根據以下條件進行匹配:
- Any instance of "king"
- Any instances of "cab" OR "goat"
- No instances of "bill"
此正則表達式適用於IsMatch():
^(?=.*?(king))(?=.*?(cab|goat))(?=.*?(bill))
但是它只返回長度為0的1組。 有沒有辦法讓它返回匹配的組,以便我們以后可以讀取匹配的文本?
由於您的模式僅使用環視,因此它將僅檢查模式,但絕不會包括匹配的模式, 除非 環視中有任何組 。
如果要捕獲完整的字符串,請使用給定模式的Match
方法
^(?=.*king)(?=.*(?:cab|goat))(?=.*bill).*$
如果此正則表達式與模式匹配,則它將與組0中的完整字符串匹配。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.