プロが教える店舗&オフィスのセキュリティ対策術

お世話になります。

文字列の分解についてお聞きします。
環境はVB.NET2008です。

Private Sub Main(ByVal CmdArgs() As String)

Dim cmds() As String
cmds = System.Environment.GetCommandLineArgs()

End Sub

コマンドライン引数で以下のように文字列を取得しています。
("起動exe", "/KEY=○○○/ テーブル名=△△△")
この文字列を元に、
変数Aに○○○を変数Bに△△△を代入したいのですが、どうやるのでしょうか?
ご教示願います。

A 回答 (2件)

momonga1119さん


正規表現を使った方が良いかと思います。

  Dim cmds() As String
  cmds = System.Environment.GetCommandLineArgs()

  Dim strKEY As String
  Dim strテーブル名 As String
  Dim mc As System.Text.RegularExpressions.MatchCollection
  mc = System.Text.RegularExpressions.Regex.Matches(cmds(2), _
        "KEY=(.*?)($|\)|/) ")
  If mc.Count >= 1 Then strKEY = mc(0).Groups(1).Value
  mc = System.Text.RegularExpressions.Regex.Matches(cmds(2), _
        "テーブル名=(.*?)($|\)|/)")
  If mc.Count >= 1 Then strテーブル名 = mc(0).Groups(1).Value

注)KEY=○○○/ KEYは英大文字での対応です。
  もし小文字の対応もしたければ、以下のように変更して下さい。

  mc = System.Text.RegularExpressions.Regex.Matches(cmds(2), _
     "KEY=(.*?)($|\)|/) ", _
     System.Text.RegularExpressions.RegexOptions.IgnoreCase)

お試し下さい。
   
    • good
    • 0

"/" でSplit()する。


Splitしたものそれぞれを、さらに"="でSplit()する。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!