Notepad++通配符

14
如何使用通配符查找并替换主域名后面的所有字符(包括“ /”字符)?
例如,我有以下4行:
intersport-schaeftlmaier.de/
weymouthhondapowersports.com/Default.asp
rtbstream.com/click?data=RG1kUFJQQUYw
top-casino-sites.com/

在Excel中,我会简单地使用以下内容: 查找此 /* 替换为此

结果将如下所示:

intersport-schaeftlmaier.de
weymouthhondapowersports.com
rtbstream.com
top-casino-sites.com

那么,如何使用Notepad++进行操作呢?

谢谢, Ziv

4个回答

22
在“查找和替换”对话框中:
  • 在搜索模式下选择正则表达式
  • 将“查找内容”设置为/.*$
  • 将“替换为”留空

这将用正则表达式将斜杠及其后面的所有文本替换为空。虽然它看起来很复杂,但学习正则表达式非常值得,因为它们对许多事情非常有用。

基本上:

  • / 不是特殊字符,因此它只匹配一个 /
  • . 是匹配单个字符的通配符。要匹配字面意义的 .,请使用 \.
  • * 是匹配前一个字符的零个或多个字符的通配符。因此,a* 将匹配零个或多个 a,而 .* 将匹配零个或多个任意字符。
  • $ 匹配一行的结尾。要匹配字面意义的 $,请使用 \$

其他一些特殊字符:

  • \ 是转义字符-用它将特殊字符转换为普通字符。要匹配字面意义的 \,请使用 \\
  • + 是匹配前一个字符的一个或多个字符的通配符。因此,a+ 将匹配一个或多个 a,而 .+ 将匹配一个或多个任意字符。
  • ^ 匹配一行的开头。要匹配字面意义的 ^,请使用 \^
  • () 组成一个匹配组。要匹配字面意义的 (),请使用 \(\)

还有一些特殊字符,包括[, ], {},还有其他的我就不一一列举了。


2
在替换中使用正则表达式,然后使用以下内容:
/.*

取消勾选“.”匹配换行符并用空字符串替换它。 :)

2
您可以使用(更好的正则表达式,如 Excel)
/.*

所以: Notepad搜索替换

在我的情况下,我不需要 /,我只输入了 .*。例如,我正在搜索文档中的 script.*scr,以查找 <script async src="stackoverflow,com"></script> - Shayan

1

搜索 -> 替换。在查找内容框中输入以下正则表达式:

/.*$

在“替换为”框中不输入任何内容。确保“搜索模式”设置为“正则表达式”。然后根据需要选择“查找下一个/替换”或“全部替换”。
工作原理:
“/”匹配“/”,确保我们从域名后面的“/”开始。 “.*”匹配任何字符任意次数。 “$”将匹配锚定到行尾。
总之,这个正则表达式查找以“/”开头,后面跟着任意数量字符,一直到行尾的内容。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接