VB.NETのアウトライン設定の正規表現

投稿者: Delフサ1 声2 投稿

こんにちは。 for EmEditor | 雪月花 - ソフトウェア開発プロジェクト https://setsugecca.org/contents_sgc4ee.htm#vbnetPlusEsy こちらのページのアウトライン設定でVB.NETの設定を利用させてもらっています。 関数名を抽出するために、このような正規表現が用いられています。 ^(?!.*End )(?!.*').*(Function|Sub)s+([^(]+).*$ 置き換え $2 これでは、Sub (ByVal AFunction as AFunctionType) という引数にFunctionという文字が含まれている場合に誤動作しております。 ですので、行頭にSub、もしくは、Subの一文字前にスペース という条件を正規表現に盛り込みたいのですが 元の正規表現が何を表しているのか、読み解くのが難しく 指定する方法がわかりませんでした。 お詳しい方、教えていただけますと幸いです。 また、この例を用いなくとも VB.NETのメソッド抽出のアウトライン設定をご存じでしたら教えてください。 よろしくお願いします。
自己レスです。 試行錯誤して次のように作りました。 これで結構うまくいきそうです。
タイプ カスタム カスタムバー最大レベル 2 一致した文字列置換 ON 1: #Region 正規表現OFF 2: (^|.*s+)([Ff]unction|[Ss]ub|[Cc]lass|[Ee]num)s+((.*)(.*$|(.*$)) 正規表現ON $4$5 コメントを縮小可能にする ON

このトピックの投稿: 2