VBScriptで、メールアドレスをCGIに引き渡したいのですが、その際、必ずエラーが出るのですが、理由を調べてみると、どうやらメールアドレスに含まれる「@」が原因のようです。
そこで、@の前に\をつけたいのですが、どうすればよいのでしょうか?
分かる方教えてください。
JavaScriptなら
r = K@pragma-i.com;
r = r.replace(/@/,"\");
となるかと思うんですが
> VBScriptで、メールアドレスをCGIに引き渡したいのですが、
どのようにして渡そうとしていますか?
場合によっては、URLエンコードが必要になりますよ。
(たとえば、「K@pragma-i.com」→「K%40pragma%2Di%2Ecom」にするとか)
> そこで、@の前に\をつけたいのですが、どうすればよいのでしょうか?
…たとえば、「K@pragma-i.com」のような文字を送ると、cgiがエラーに
なるけれど、「K\@pragma-i.com」を送れば、正しく処理された…という事でしょうか?
> JavaScriptなら
> r = K@pragma-i.com;
> r = r.replace(/@/,"\");
> となるかと思うんですが
これだと、JavaScript でも JScript でもエラーになりませんか?
> VBScriptで、正規表現を使って文字を入れ替えるには?
正規表現(RegExpオブジェクト)を使う事に拘らず、
Mail = "K@pragma-i.com"
S = Replace(Mail, "@", "\@")
のようにしてみるとか。