Notepad++:如何使用正则表达式删除第二次出现逗号后的文本

Notepad++:如何使用正则表达式删除第二次出现逗号后的文本

我有这样的文字行

string1,email,string2,string3

如何使用正则表达式返回以下内容?

string1,email

我想删除第二个逗号后面的所有内容。

答案1

搜索:

^([^,]*,[^,]*),.*$

并替换为

\1

解释:

^表示模式应从行首开始匹配。
[^,]*,是不包含逗号的文本,后跟一个逗号。连续两个这样的字符将给出逗号分隔列表中的前两个项目。
.*$是行中的所有其他内容。
\1返回括号内与模式匹配的所有内容。

编辑以回应评论:

要交换电子邮件和字符串1,请使用以下命令:

搜索:

^([^,]*),([^,]*),.*$

并替换为:

\2,\1

这些数字与搜索模式中括号组的顺序相对应。

答案2

你可以这样做:

  • 在 Notepad++ 中按Ctrl + F

  • 选择标签:代替

  • 标记正则表达式选项

  • 设置搜索: (.*),email,(.*)

  • 用。。。来代替: \1,email

只需按下“替换”按钮即可。

相关内容