VB.NETのアウトライン設定の正規表現
こんにちは。
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