ファイルから読み取った変数に対して使用すると、以下のコードの RegExMatch コマンドが失敗する理由を見つけようとしています。ファイルの内容を AHK 内の変数に直接割り当てると機能します。
これをテストするには、メモ帳を開き、TableCode2 の複数行の内容をメモ帳にコピーして、c:\temp\testtable.txt として保存します。
スクリプトを実行すると、最初のメッセージ ボックスに一致が表示されません。2 番目のボックスが一致します。これをwindows7 32ビットと64ビットの両方でテストしました。
両方のシナリオの違いと、ファイルと照合できない理由について何か考えはありますか?
InputTable = c:\temp\testtable.txt
FileRead, TableCode, %InputTable%
TableCode2 =
(
OBJECT Table 50093 test
{
OBJECT-PROPERTIES
{
Date=22.08.13;
Time=10:47:20;
}
PROPERTIES
{
}
FIELDS
{
{ 1 ; ;test ;Text30 }
}
KEYS
{
{ ;test ;Clustered=Yes }
}
CODE
{
BEGIN
END.
}
}
)
Needle := "FIELDS(.*)KEYS"
Foundpos := RegExMatch(TableCode,Needle,Out)
msgbox, %Needle%`n %Out1%`n--------------%TableCode%
Foundpos := RegExMatch(TableCode2,Needle,Out)
msgbox, %Needle%`n %Out1%`n--------------%TableCode%