1

URL のコレクションがあり、必要なコンテンツをフィルター処理するために正規表現を記述する必要があります。

/data/43492-someText/"

/data/221639-anotherText/"

/data/116345-differentText/"

/data/6630-ブーアリング/」

/data/220742-foo/"

必要なのは、末尾に /" のない文字列だけなので、

/data/220742-foo

私の正規表現は次のようになります。

@"/data/[0-9]{1,10}-.*""\s"

注:私のプロジェクトにはいくつかの制限があるため、文字列置換でこれを行いたくありません。

4

4 に答える 4

5

それ (で終わらない文字列/) が唯一の要件である場合は、次のようなものを使用します。

var desiredUrls = urls.Where(url => !url.EndsWith("/\""))

私は最初、URL をフィルタリングしたいという願望として質問を読みましたが、それがマッピングの質問である可能性があることがわかります。

var withoutSuffix = urls.Select(url => url.TrimEnd("/\"".ToCharArray());
于 2012-11-19T19:42:17.703 に答える
4

正規表現は、あなたがやろうとしていることに対して一種のやり過ぎだと思います。

とにかく、次のようなものを使用できます

@"/data/[0-9]{1,10}-[^/]+"
于 2012-11-19T19:48:11.950 に答える
2

TrimEnd文字列の末尾から文字を削除するために使用できます。

s.TrimEnd('/', '"')
于 2012-11-19T19:42:40.633 に答える
1

次のようなものを使用できます。

(/data/[0-9]{1,10}-.+)/

末尾に / が付いていない文字列は、最初のキャプチャ グループに含まれます。

于 2012-11-19T19:43:02.283 に答える