1 件の投稿を表示中 (合計 2 個)
  • 作成者
    投稿
  • #10780
    Delフサ
    参加者

    こんにちは。

    for EmEditor | 雪月花 – ソフトウェア開発プロジェクト
    http://setsugecca.org/contents_sgc4ee.htm#vbnetPlusEsy

    こちらのページのアウトライン設定でVB.NETの設定を利用させてもらっています。

    関数名を抽出するために、このような正規表現が用いられています。

    ^(?!.*End )(?!.*’).*(Function|Sub)s+([^(]+).*$
    置き換え $2

    これでは、Sub (ByVal AFunction as AFunctionType)

    という引数にFunctionという文字が含まれている場合に誤動作しております。

    ですので、行頭にSub、もしくは、Subの一文字前にスペース
    という条件を正規表現に盛り込みたいのですが

    元の正規表現が何を表しているのか、読み解くのが難しく
    指定する方法がわかりませんでした。

    お詳しい方、教えていただけますと幸いです。

    また、この例を用いなくとも
    VB.NETのメソッド抽出のアウトライン設定をご存じでしたら教えてください。

    よろしくお願いします。

    #10787
    Delフサ
    参加者

    自己レスです。

    試行錯誤して次のように作りました。
    これで結構うまくいきそうです。

    タイプ カスタム
    カスタムバー最大レベル 2
    一致した文字列置換 ON
    1: #Region
    正規表現OFF
    2:
    (^|.*s+)([Ff]unction|[Ss]ub|[Cc]lass|[Ee]num)s+((.*)(.*$|(.*$))
    正規表現ON $4$5

    コメントを縮小可能にする ON

1 件の投稿を表示中 (合計 2 個)
  • このトピックに返信するにはログインしてください。