[英]How to Match with Regex "shortest match" in .NET
我正面臨正則表達式的問題...我必須匹配 sharepoint URL..我需要匹配“最短”
就像是:
http://aaaaaa/sites/aaaa/aaaaaa/
m = Regex.Match(URL, ".+/sites/.+/");
m.Value 等於整個字符串...
我怎樣才能讓它匹配
http://aaaaaaa/sites/aaaa/
沒有別的??
非常感謝你!
.+
是貪婪的,所以它會在停止之前匹配盡可能多的字符。 將其更改為.+?
比賽將盡快結束:
m = Regex.Match(URL, ".+/sites/.+?/");
嘗試使正則表達式匹配除/
而不是所有內容之外的所有內容。 這是通過使用字符 class 原子[^]
的非形式來完成的。
m = Regex.Match(URL, ".+/sites/[^/]+/");
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.