複数行にわたる正規表現No.03112
hata さん 99/04/28 12:45
 
正規表現について教えていただきたいことがあります。
現在、Mathematicaというソフトのプログラム用の
強調表示定義ファイルを作っていて、複数行にわたるコメントを
正規表現で表すことができずに苦労しております。

コメントのルールはC言語と似ていて、
(* から次の *) までがコメントになります。
これを正規表現で表すには、JRさんのホームページのFAQの真似をして、

\(\*([^\)]|[^\*]\)|\n)*\*\)

でいいかと思いましたが、これは複数行にわたるコメント

(* comment
*)

をヒットしません。また、なぜか (**) もだめです。

どなたかお知恵をお貸しください。お願いします。

[ ]
RE:03112 複数行にわたる正規表現No.03114
マイフェス さん 99/04/28 13:32
 
>強調表示定義ファイルを作っていて、複数行にわたるコメントを
>正規表現で表すことができずに苦労しております。

改行を含む正規表現は、強調表示の場合出来なかったように記憶しています。
理由は、何だったか忘れましたが。
検索の正規表現とはそのへんのルールに違うがあるようです。


[ ]
RE:03114 複数行にわたる正規表現No.03117
hata さん 99/04/28 14:13
 
>改行を含む正規表現は、強調表示の場合出来なかったように記憶しています。

マイフェスさま、コメントありがとうございます。
納得いたしました。

秀丸作者さま:
「ファイルタイプ別の設定」の「表示」タブにある
コメントモードにMathematicaも加えていただければ幸いです。
(* から *) までがコメントです。

hata

[ ]
RE:03112 複数行にわたる正規表現No.03118
ひろ さん 99/04/28 14:43
 
 hata さん今日は、ひろです。
> 強調表示定義ファイルを作っていて、複数行にわたるコメントを
> 正規表現で表すことができずに苦労しております。
 現状では強調表示の定義に『\n』を含む事が出来ないので、複数行は無理
です。comment の判定に mathematica も含めていただくよう要望を出されて
は如何でしょうか?

[ ]
RE:03117 複数行にわたる正規表現No.03128
秀丸担当 さん 99/04/28 18:02
 
>秀丸作者さま:
>「ファイルタイプ別の設定」の「表示」タブにある
>コメントモードにMathematicaも加えていただければ幸いです。
>(* から *) までがコメントです。

では検討しておきます。
ちなみにコメントとなるのは、(* から *) までだけなのでしょうか。
他にはないでしょうか。

[ ]
RE:03128 複数行にわたる正規表現No.03131
hata さん 99/04/28 18:22
 
>>コメントモードにMathematicaも加えていただければ幸いです。
>>(* から *) までがコメントです。
>
>では検討しておきます。
>ちなみにコメントとなるのは、(* から *) までだけなのでしょうか。
>他にはないでしょうか。

コメントとなるのはそれだけです。
なお、Mathematicaというのは数式処理ソフトで、
その分野のソフトの中ではメジャーなものです。
お願いいたします。

[ ]
RE:03131 複数行にわたる正規表現No.03133
番頭++ さん 99/04/28 18:46
 
>>>(* から *) までがコメントです。

>コメントとなるのはそれだけです。
>なお、Mathematicaというのは数式処理ソフトで、
>その分野のソフトの中ではメジャーなものです。
>お願いいたします。

文字リテラルの情報も必要です。
文字リテラルの継続は可能ですか ??? とかも ...
C の "...." みたいなものです。文字リテラル中のコメント (* *) は無効ですよね 。。。

[ ]
RE:03133 複数行にわたる正規表現No.03135
hata さん 99/04/30 09:37
 
>>>>(* から *) までがコメントです。
>
>文字リテラルの情報も必要です。
>文字リテラルの継続は可能ですか ??? とかも ...
>C の "...." みたいなものです。文字リテラル中のコメント (* *) は無効ですよね
 。。。

番頭++さま、ご指摘ありがとうございます。
Mathematicaでも、文字列中では (* や *) は意味を持ちませんので、

文字列の中にない (* から次の *) までがコメント

と言えます。
文字リテラルの継続という概念がわからないのですが、
これでコメントのルールのすべてを尽くしていると思われます。

Mathematicaで文字列は "mojiretsu" のように ""でくくって表します。
すなわち、 " から \"(これは " 自身を表す) を除く次の " までが文字列になり
ます。

では、コメントモードへの採用のご検討よろしくお願いいたします。>秀丸担当さま

[ ]
RE:03135 複数行にわたる正規表現No.03138
番頭++ さん 99/04/30 10:41
 
>文字リテラルの継続という概念がわからないのですが、

Mathematica が何なのかは知りませんが、

(***************
コメントです
***************)

正しいですか ???

Cell[TextData[
"\:65e2\:5b58\:306e\:30d1\:30ec\:30c3\:30c8\:306f\:3001\:30e6\:30fc\:30b6\
\:30ba\:3059\:308b\:3053\:3068\:3082\:3067\:304d\:307e\:3059\:3002"], "Text"],

リテラルの継続とは、改行 (CR/LF) を含むことができますか ???
のような意味です。

[ ]
RE:03112 複数行にわたる正規表現への要望No.04006
あっぷる さん 99/09/08 18:59
 
>正規表現について教えていただきたいことがあります。
>現在、Mathematicaというソフトのプログラム用の
>強調表示定義ファイルを作っていて、複数行にわたるコメントを
>正規表現で表すことができずに苦労しております。

私も「改行コードを含む複数行の正規表現」で困っております。
「Mathematica」ではありません。オリジナルの言語を開発して
おりまして、これに色付けを行いたいのですが、改行コードを
含むため苦労しております。

できれば、「Mathematica」限定ではなく、正規表現そのものを
改良して頂けませんでしょうか?

!SUB       ---+
   xxxxxxxx   |
   xxxxxxxx   +- この範囲に色付けを行いたい
   xxxxxxxx   |
!END       ---+

色付けは、「!命令」〜「!END」の範囲で行いたいので、
正規表現「!SUB.*!END」のように書けば、
色が付いて欲しいのです。


[ ]
RE:04006 複数行にわたる正規表現への要望No.04016
秀丸担当 さん 99/09/10 18:27
 
>私も「改行コードを含む複数行の正規表現」で困っております。
>「Mathematica」ではありません。オリジナルの言語を開発して
>おりまして、これに色付けを行いたいのですが、改行コードを
>含むため苦労しております。
>
>できれば、「Mathematica」限定ではなく、正規表現そのものを
>改良して頂けませんでしょうか?

独自の言語となると、現在のしくみではできないので、正規表現
でも複数行できるように改良しなくてはいけません。
とりあえずいまのところやる予定はありません。ごめんなさい。

[ ]
RE:04016 複数行にわたる正規表現への要望No.04023
あっぷる さん 99/09/13 09:08
 
>独自の言語となると、現在のしくみではできないので、正規表現
>でも複数行できるように改良しなくてはいけません。
>とりあえずいまのところやる予定はありません。ごめんなさい。

すぐに改良されなくても、将来的に改良される見込みがあるよう
でしたら、それまで待ち続けたいと思います。
宜しくお願い致します。m(__)m ぺこり☆

[ ]
RE:03128 複数行にわたる正規表現No.04139
area-master さん 99/10/05 16:28
 
>>秀丸作者さま:
>>「ファイルタイプ別の設定」の「表示」タブにある
>>コメントモードにMathematicaも加えていただければ幸いです。
>>(* から *) までがコメントです。
>
>では検討しておきます。
>ちなみにコメントとなるのは、(* から *) までだけなのでしょうか。
>他にはないでしょうか。
このパターンは、Pascalにも相当するので、
Pascalモードも追加を考慮して下さい。
ちなみに、Pascalのばあい、コメントパターンは、2種類あって、
(* ... *) | { ... }
です。文字列リテラルは、「'」(SingleQuote)で括ります。

[ ]
RE:04139 複数行にわたる正規表現No.04146
秀丸担当 さん 99/10/06 18:57
 
>Pascalモードも追加を考慮して下さい。
>ちなみに、Pascalのばあい、コメントパターンは、2種類あって、
>(* ... *) | { ... }
>です。文字列リテラルは、「'」(SingleQuote)で括ります。

む、そうなのですか。
実はPascalは既にあります。
ファイルタイプ別の設定の、コメント/文字定数のカラー表示の
種類に、Pascal/Delphiがあります。
Mathematicaもこれで対応できるのではないでしょうか。

[ ]
RE:04146 複数行にわたる正規表現No.04167
area-master さん 99/10/07 11:06
 
>>Pascalモードも追加を考慮して下さい。
>>ちなみに、Pascalのばあい、コメントパターンは、2種類あって、
>>(* ... *) | { ... }
>>です。文字列リテラルは、「'」(SingleQuote)で括ります。
>
>む、そうなのですか。
>実はPascalは既にあります。
>ファイルタイプ別の設定の、コメント/文字定数のカラー表示の
>種類に、Pascal/Delphiがあります。
>Mathematicaもこれで対応できるのではないでしょうか。

  あっ、有りました。
  ここんとこ、Pascal のソースを全然触っていないんで、
  新バージョンでのコメント指定をする必要がなかったんです。
  失礼致しました。
  でも、Mathemaicaの件、解決できそうなので良かったです。
  # 最近、Mathemaicaも触っていないな〜

  私は、結構いろんなプログラミング言語や、スクリプト言語
  を使ってみるのでが好きなので、コメントの件以外にも、
  強調表示の正規表現関係でいろいろと拡張できる方が重宝します。

[ ]