段落の下部でテキスト # が 1 つになるようにグループ化する方法

段落の下部でテキスト # が 1 つになるようにグループ化する方法

私の問題はこんな感じです:
.⁣
#jsrzaidulakbar#airnanojsr #promiljsr
コミュニティは、コンピューター ソフトウェアやコンピューター ハードウェアに関する質問の解決を支援します。質問に関する詳細を提供し、調査結果を共有してください。
#jsrzaidulakbar #airnanojsr #promiljsr

変身したい:

.⁣
コミュニティは、コンピューター ソフトウェアやコンピューター ハードウェアに関する質問の解決を支援します。質問に関する詳細を提供し、調査結果を共有してください。
#jsrzaidulakbar #airnanojsr #promiljsr #jsrzaidulakbar#airnanojsr #promiljsr

答え1

テキストに # が含まれていないと仮定すると、次の操作を実行できます。

  • Ctrl+H
  • 検索対象:^\h*(#.+)\R((?:(?!#)[\s\S])+#.+)
  • と置換する:$2 $1
  • チェック 包み込む
  • チェック 正規表現
  • チェックを外す . matches newline
  • Replace all

説明:

^           # beginning of line
    \h*         # optional horizontal spaces
    (#.+)       # group 1, a "#" and 1 or more any character but newline
    \R          # any kind of linebreak
    (           # group 2
        (?:         # non capture group
            (?!#)       # negative lookahead, make we haven't a "#" just after current position
            [\s\S]      # any character
        )+          # end group, must appear 1 or more times
        #           # a "#"
        .+          # 1 or more any character but newline
    )           # end group

スクリーンショット(前):

ここに画像の説明を入力してください

スクリーンショット(後):

ここに画像の説明を入力してください

関連情報