• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:vbs 配列の存在確認をしたい。)

VBSでの配列の存在確認についての質問

このQ&Aのポイント
  • VBSで配列の存在確認をしたいと思っています。具体的には、ドメインを取得するプログラムを作成したいのですが、苦戦しています。
  • 現在、以下のVBSコードを使用しています。しかし、正しいURLが渡されない場合にプログラムが実行エラーになってしまいます。
  • この問題を解決するために、どのようにすれば良いでしょうか?存在確認を行う方法を教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

質問にあるコードを前提にすると、 If Matches.Count = 0 Then   msgbox "実行不可形式なURL" Else   msgbox Replace(Matches(0).Submatches(0),"www.","") End If で済むと思います。 しかし、サブドメインがwwwでないものや、URLの最後が/で終わらないもの http://blog.test.co.jp/ http://test.co.jp/test.html http://www.test.co.jp といったものからドメインの抽出が行えません。 やりたいことにそういったものがなければ良いのですが。

ginfix
質問者

お礼

回答ありがとうございます。 仰る通り、wwwでないものについて考慮できていませんでしたね…。 ちょっと正規表現を見直してみます。

その他の回答 (1)

  • notnot
  • ベストアンサー率47% (4900/10358)
回答No.1

マッチしたかどうかを判断したいのなら、Matchesコレクションの個数 つまり、Matches.count > 0 で判断できます。 ドメインの次の / が省略されている場合でもと言うことであれば、 reg.Pattern = "/{2}([^/]+)/?" ですね。

ginfix
質問者

お礼

回答ありがとうございます。 末尾省略は考慮できておりませんでしたので、大変助かりました。 ありがとうございます。

関連するQ&A