replaceallfastで一般保護エラーNo.00172
らみや さん 98/06/30 14:09
 
みやざわと申します。

HTMLの整形の為、replaceallfastを多用するマクロをかいたのですが....
最初の replaceallfastが終わり、次のが始まる直前に、一般保護領域エラー(kerne
l32.dll)がでて落ちてしまうんです。

これは自分のマシン環境のせい....なんでしょうか?

ちなみにその箇所は、
replaceallfast "<FONT SIZE=4><a href = \"9....\.html\">","<FONT SIZE=4><a hr
ef = \"" + $oldfilename + "\.html\">",regular;
replaceallfast ".月第.週",$monthname + "月第" + $weekname + "週",regular;
replaceallfast "(../..〜../..)","(" + $startdate + "〜" + $enddate + ")",
regular;
ってなかんじですが。

どなたか識者の方、お助け乞います_(._.)_
それでは。

[ ]
RE:00172 replaceallfastで一般保護エラーNo.00173
番頭++ さん 98/06/30 14:36
 
>replaceallfast "<FONT SIZE=4><a href = \"9....\.html\">", "<FONT SIZE=4><a href = \"" + $oldfilename + "\.html\">", regular;



replaceallfast "<FONT SIZE=4><a href = \\"9....\\.html\\">", "<FONT SIZE=4><a href = \"" + $oldfilename + "\.html\">", regular;

正規表現でのエスケープシーケンスをマクロの文字リテラルで使用するときには、
検索の文字列は \\ と 2 個コードします。1 個でもうまくいく場合もありますが。

「".」 を探すときには、

replaceallfast "\\"\\.", ....; とコードするとうまく行きます。

それとも勘違いですか ...

[ ]