Namazu-win32-users-ja(旧)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
シングルクォートを%27にreplaceするには
- From: "maruyama kenjiro" <maruyama_kenjiro@xxxxxxxxxxx>
- Date: Wed, 14 Apr 2004 00:09:23 +0900
- X-ml-name: namazu-win32-users-ja
- X-mail-count: 02095
初めて投稿させていただきます。
よろしくお願いいたします。
namazurcのreplaceでパス中のシングルクォートを
%27に置換出来るでしょうか?
以下の問題、シングルクォートをうまく置換できれば
解決しそうな気がするのですが。
問題の環境は、イントラ内で利用しており
共有ディレクトリ内のファイルをnamazu検索しております。
サーバー:
Win200ProSP4 + anHttp1.42k + activePerl5.6.1.633 + namazu2.0.12
クライアント:
Win98/2K/XP + IE5.5/IE6
という100%windowな環境のため
検索対象のドキュメントは大多数がExcelやWordのファイルです。
どうせ限られたクライアントしか対象としないので
検索結果へのリンク(.xlsや.doc)はIEのなかで参照するのではなく
ファイルに関連付けられたアプリケーション(wordやexcel)で開きたく思い
uri変数の値をVBScriptに渡してWSHで関連付け実行を試みています。
下記HTMLのonClickのところを試行錯誤しています。
【外側をシングルクォートで括ると】
<a href = "vbscript:"
onclick = 'vbscript:wsh.Run(chr(34)+"${uri}"+chr(34))'>
このとき${uri}にシングルクオートが含まれていると
onclickの値の部分が途中で途切れてしまいます。
【外側を括らない】
<a href = "vbscript:"
onclick = vbscript:wsh.Run(chr(34)+"${uri}"+chr(34))>
これだとシングルクオートは解決しますが
ファイルパスに半角スペースが含まれると
スクリプトエラー(ファイルが見つからない)となります。
【外側をダブルクォートで括ると】
<a href = "vbscript:"
onclick = "vbscript:wsh.Run(chr(34)+'${uri}'+chr(34))">
一番最初、このように書いたのですが
VBの中では文字列区切りはダブルクォートしか使えません。
そういえばVBのシングルクォートはコメントアウトでした、、、。
【外も中もダブルクォート?】
<a href = "vbscript:"
onclick = "vbscript:wsh.Run(chr(34)+"${uri}"+chr(34))">
どっちが外側だか分からない。説明の余地なしですね。
長文になってしまいました。すいません。
どなたかご教示願います。
==================================
Maruyama Kenjiro
maruyama_kenjiro@xxxxxxxxxxx
==================================
__________________________________________________
Do You Yahoo!?
http://bb.yahoo.co.jp/