17

正規表現で問題が発生しています...SharePointURLを一致させる必要がありました。「最短」を一致させる必要があります

何かのようなもの:

http://aaaaaa/sites/aaaa/aaaaaa/

m = Regex.Match(URL, ".+/sites/.+/");

m.Valueは文字列全体に等しい...

どうすれば一致させることができますか

http://aaaaaaa/sites/aaaa/

何もありません??

どうもありがとうございます!

4

2 に答える 2

34

.+貪欲なので、停止する前にできるだけ多くの文字に一致します。に変更する.+?と、試合はできるだけ早く終了します。

m = Regex.Match(URL, ".+/sites/.+?/");
于 2012-04-10T17:29:17.740 に答える
8

/単にすべてではなく、すべてに一致する正規表現を作成してみてください。これは、文字クラスアトムのnot形式を使用して行われ[^]ます。

m = Regex.Match(URL, ".+/sites/[^/]+/");
于 2012-04-10T17:28:03.467 に答える