基本的には SHIFT_JIS で保存する
まず、WEB 側に置くコードですが、Content-Type を text/plain にする為に、PHP で httpヘッダーを記述します。.htaccess で記述してもかまいませんが、WEB上の好きな場所に移動しやすくする為に php で記述しておくのが一番いいと思います。 ソースのキャラクタセットは shift_jis で保存して shift_jis として httpヘッダーに出力します。こうしておくと、PC 側で ServerXMLHTTP を使って読み出して、動的に関数を定義する事も可能になります。( 動的に定義する場合は、UTF-8 でも問題ありません )動的に定義する場合は VBScript の記述方法に注意
WEB 側に VBScript のコードを置いて動的に定義する場合の注意として重要なルールが二つあります。 1) シングルクォートのコメントを使用しない 2) 条件式の = を使用しない 何れも VBScript の構文解析の問題らしいです。PHP で 『正規表現のトリム』の記述
01.
<?php
02.
header(
"Content-Type: text/plain; charset=shift_jis"
);
03.
header(
"Expires: Thu, 19 Nov 1981 08:52:00 GMT"
);
04.
header(
"Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0"
);
05.
header(
"Pragma: no-cache"
);
06.
?>
07.
REM **********************************************************
08.
REM 正規表現のトリム
09.
REM **********************************************************
10.
Function RegTrim( strValue )
11.
12.
Dim regEx, str
13.
14.
Set regEx = New RegExp
15.
regEx.IgnoreCase = True
16.
regEx.Pattern =
"^[ \s]+"
17.
str = regEx.Replace( strValue,
""
)
18.
regEx.Pattern =
"[ \s]+$"
19.
RegTrim = regEx.Replace( str,
""
)
20.
21.
End
Function
この関数は、VBScript の正規表現を使って文字列の左右の空白文字を漢字スペースも含めて取り除くものです。 PC 側の定義は通常通りですが、script 要素の src 属性で web 上の場所を指定する事になります。拡張子を .wsf にしてWscript.exe か Cscript.exe で実行します( 通常はエクスプローラからダブルクリックです )
01.
<job>
02.
<script language=
"VBScript"
src=
"https://toolbox.winofsql.jp/vbs/regtrim.php"
></script>
03.
<script language=
"VBScript"
>
04.
05.
str = RegTrim( getResource(
"mydata"
) )
06.
MsgBox(
"/"
& str &
"/"
)
07.
08.
</script>
09.
<resource id=
"mydata"
>
10.
11.
12.
この部分のみ取り出します
13.
14.
15.
</resource>
16.
</job>
埋め込みテキストがソースコードの場合の記述方法
resource 要素では、ソースコード内にテキストデータを用意できるのでソースコードを準備しておいて、プログラムを登録したい時に使ったりします 但し、そのような場合は文の中に < があるとエラーになるので以下のように記述します
01.
<job>
02.
<script language=
"VBScript"
src=
"https://toolbox.winofsql.jp/vbs/regtrim.php"
></script>
03.
<script language=
"VBScript"
>
04.
05.
str = RegTrim( getResource(
"mydata"
) )
06.
MsgBox(
"/"
& str &
"/"
)
07.
08.
</script>
09.
<resource id=
"mydata"
>
10.
<![CDATA[
11.
12.
この部分のみ < 取り出します
13.
14.
]]>
15.
</resource>
16.
</job>