![Notepad++ 常规帮助列表](https://linux22.com/image/1492492/Notepad%2B%2B%20%E5%B8%B8%E8%A7%84%E5%B8%AE%E5%8A%A9%E5%88%97%E8%A1%A8.png)
你好,我的清单如下:
Name | Surname | email |
Name | Surname | email |
Name | Surname | email |
Name | Surname | email |
我想复制所有电子邮件,如下所示:
email
email
email
email
我怎样才能在 notepad++ 中使用正则表达式来实现这一点?
答案1
制作一个备份文件,然后在备份上尝试以下操作:
Find What: ^(.+) \| (.+) \| (.+) \|
Replace with: \3
括号“()”是捕获组,“\|”转义管道符号,因此它不会被解释为命令,“^”表示行首。
“\3” 表示用第 3 个捕获组替换找到的内容。
答案2
- Ctrl+H
- 找什么:
^.+\|\h+([^\|\r\n]+)\h+\|
- 用。。。来代替:
$1
- 查看 环绕
- 查看 正则表达式
- 取消选中
. matches newline
- Replace all
解释:
^ # beginning of line
.+ # 1 or more any character but newline
\| # a pipe
\h+ # 1 or more horizontal spaces
([^\|\r\n]+) # group 1, 1 or more any character that is not a pipe or linebreak
\h+ # 1 or more horizontal spaces
\| # a pipe
替代品:
$1 # content of group 1 (i.e. email)
截图(之前):
截图(之后):