
私は次のような膨大なランダムデータを持っています
1231286234|453|1234|xxx|aabbc|xcvxcvxcv|xcvxcvxcv|Xcvxcvxcv
1231286234|453|1234|xxx| aabbc|xcvxcvxcv|xcvxcvxcv|Xcvxcvxcv
1231286234|453|1234|xxx |aabbc|xcvxcvxcv|xcvxcvxcv|Xcvxcvxcv
1231286234|453|1234|xxx | aabbc|xcvxcvxcv|xcvxcvxcv|Xcvxcvxcv
線は大きく、データはランダムなので、
1231286234|453|1234|xxx aabbc|xcvxcvxcv|xcvxcvxcv|Xcvxcvxcv
1231286234|453|1234|xxx aabbc|xcvxcvxcv|xcvxcvxcv|Xcvxcvxcv
1231286234|453|1234|xxx aabbc|xcvxcvxcv|xcvxcvxcv|Xcvxcvxcv
1231286234|453|1234|xxx aabbc|xcvxcvxcv|xcvxcvxcv|Xcvxcvxcv
答え1
これは、提供されたサンプルでは機能します。
Find what: (\w*\|\w*\|\w*\|\w*)([\|\s]*)([\w\|]*)
Replace with: \1 \3
Search mode: Regular expression
答え2
- Ctrl+H
- 検索対象:
^(?:[^|]+\|){3}.*?\K\h*\|\h*
- 置換:
<-- スペース
- チェック 包み込む
- チェック 正規表現
- チェックを外す
. matches newline
- Replace all
説明:
^ # beginning of line
(?: # start non capture group
[^|]+ # 1 or more non pipe
\| # a pipe, have to be escaped as it's special character for regex
){3} # end group, must appear 3 times
.*? # 0 or more any character but new line, not greeedy
\K # forget all we have seen until this position
\h* # 0 or more horizontal spaces
\| # a pipe, have to be escaped as it's special character for regex
\h* # 0 or more horizontal spaces
スクリーンキャプチャ(前):
スクリーンキャプチャ(後):