Perlの文字列認識についてNo.23330
ma2ten さん 07/07/31 18:03
 
こんにちは。
今Perlのソースをファイルタイプ別の設定「複数行コメント」で
・言語:Perl
・文字列を認識:チェック
に設定して開いていますが、例えば

if( -s $file > 0 ) { exit; }

という行があると、"-s"より後ろが(次行以降も)文字定数で指定した色で表示され
てしまいます。
「文字列を認識」のチェックを外すと(当然でしょうが)他の色になります。
また"-s"の部分を"-e"や"-f"等に変更すると、「文字列を認識」をチェックしていて
も文字定数の色にはなりません。

もしかして構文解析に失敗していないでしょうか?
ご確認いただければと思います。

ちなみにWindowsXPsp2で
・秀丸v6.13+HMJRE.DLL v1.80
・秀丸v7.00β18+HMJRE.DLL v1.85
の双方でこの現象を確認できました。

[ ]
RE:23330 Perlの文字列認識についてNo.23331
秀丸担当 さん 07/07/31 18:11
 

>if( -s $file > 0 ) { exit; }
>
>という行があると、"-s"より後ろが(次行以降も)文字定数で指定した色で表示され

おっしゃる通り、解析に失敗しているようです。
s/search/replace/
という書き方を記号にした
s$search$replace$
と誤認識しています。

とりあえずsの前に-がある場合は除外するように修正してみようかと思います。
-sというのは知らなかったのですが、sの前に-が付いていたら、何か特別な意味
があるのでしょうか。
他にもそういった例があるようでしたら教えていただけると助かります。

[ ]
RE:23331 Perlの文字列認識についてNo.23333
ma2ten さん 07/07/31 18:28
 
>とりあえずsの前に-がある場合は除外するように修正してみようかと思います。
>-sというのは知らなかったのですが、sの前に-が付いていたら、何か特別な意味
>があるのでしょうか。
>他にもそういった例があるようでしたら教えていただけると助かります。

"-s" はファイルサイズを検査する演算子です。
類似のファイル検査演算子は他にも幾つかありますが、全部に関しては私も確認して
いません。
どんなコマンドがあるかは、とほほ〜等のPerl入門サイトで調べられると思いますの
で、よろしくお願いします。
参考サイト:
http://www.tohoho-web.com/wwwperl1.htm#FileTest
http://micho.mimora.com/mirror/perl_texinfo/perl_22.html#SEC41

[ ]
RE:23333 Perlの文字列認識についてNo.23338
秀丸担当 さん 07/08/01 10:56
 

>"-s" はファイルサイズを検査する演算子です。
>類似のファイル検査演算子は他にも幾つかありますが、全部に関しては私も確認して
>いません。
>どんなコマンドがあるかは、とほほ〜等のPerl入門サイトで調べられると思いますの
>で、よろしくお願いします。
>参考サイト:
>http://www.tohoho-web.com/wwwperl1.htm#FileTest
>http://micho.mimora.com/mirror/perl_texinfo/perl_22.html#SEC41

情報ありがとうございます。参考になります。
-sは除外するように修正させていただきます。

[ ]