2010-12-28 8 views
2

文字列のリストがあれば、有効な文字列を見つけることに興味がありますhttp:// URL。.NETでURLを検索しますか?

var urls = strs.Where(str => urlRegex.matches(str));

はそれを行うにはより多くの慣用/ナチュラル/簡単な方法があります:私の最初のアプローチは、正規表現を使用して、このような何かをするだろうか?

答えて

0

System.Uri Classに組み込まれている構文解析を使用して、URLを検証できます。これは、URLに含まれるクエリ文字列を正しく処理する利点があり、.NetがURLとして使用できる文字列を解析できるはずです。

TryCreateを使用して各文字列の解析を試みた後、Uti.SchemeプロパティがHTTP URIであることを確認します(そうでない場合、ファイルシステムパスもフィルタを通過します)。

1

はい私はUri.TryCreateを使用し、正常に解析されたURIのSchemeプロパティをテストして、HTTPであることを確認します。

しかし、あなたが探していたURIがより大きいテキストブロックの部分文字列である場合、正規表現が行かれます。

1

私は正規表現ベースのアプローチに行くとあなたのアプローチは私によく見える

関連する問題