0

文字列を取得し、画像 URL ではないすべてのものを取り除く関数を作成する方法を考えていました。

最良のコースはregExだと思いますが、よくわかりません。

コンテンツ タイプは関係ありません。拡張子が jpg、gif、または png の URL である必要があります。

私は行ってみましたが、役に立ちませんでした。

Function RegExResults(strTarget, strPattern)

    Set regEx = New RegExp
    regEx.Pattern = strPattern
    regEx.Global = true
    Set RegExResults = regEx.Execute(strTarget)
    Set regEx = Nothing

End Function

Set arrResults = RegExResults(data, "(http://)([a-zA-Z0-9\/\.])*")

For each result in arrResults
    Response.Write(result.Submatches(0)) & "<br>"
Next

Set arrResults = Nothing
4

1 に答える 1

0

テキストブロック内の正規表現と URL を扱う他の質問で多くの人が以前に言及したように、正規表現を使用して 100% 正確に行うことはほとんど不可能です。その理由をよりよく理解するには、 Regex Guruによるこの投稿を参照してください。あなたが提供した限られた詳細を考えると、彼の解決策はおそらくこの状況で使用するのに最適なものです. 探しているのが正規表現で正しい拡張子を指定することにより、画像ファイルのみを取得するように末尾を変更する必要があります。

\b(?:(?:https?|ftp|file)://|www\.|ftp\.)(?:\([-A-Z0-9+&@#/%=~_|$?!:,.]*\)|[-A-Z0-9+&@#/%=~_|$?!:,.])*(?:\([-A-Z0-9+&@#/%=~_|$?!:,.]*\)|[A-Z0-9+&@#/%=~_|$])(?:\.jpg|\.png|ETC.)

これはリンクにある正規表現を使用しており、ETC を置き換えるだけです。探したいさまざまなファイル拡張子を含む複数の or ステートメントを使用します。

于 2012-07-18T12:18:22.907 に答える