我需要在一些Visual Studio 2010解决方案中找到所有硬编码的IP地址。
如何使用Visual Studio 2010中的标准“查找”实用程序(Ctrl + Shift + F)执行此操作?
答案 0 :(得分:7)
不幸的是,Visual Studio 2010中的“在文件中查找”功能中的正则表达式搜索与Perl5不兼容。此正则表达式模式将匹配x.x.x.x
样式中指定的任何数字(即IPv4样式的地址):
[0-9]#\.[0-9]#\.[0-9]#\.[0-9]#
根据the documentation,看起来没有办法指定模式必须重复 1到3次这是你真正想要的IPv4-样式八位字节,因此上述模式也会匹配2.0.20505.0
等版本号。
但是,您可以将八位字节中的位数限制为3,方法是将它们明确指定为单独的组,尽管它非常详细:
([0-9]|([0-9][0-9])|([0-9][0-9][0-9]))\.([0-9]|([0-9][0-9])|([0-9][0-9][0-9]))\.([0-9]|([0-9][0-9])|([0-9][0-9][0-9]))\.([0-9]|([0-9][0-9])|([0-9][0-9][0-9]))
这仍然会匹配版本号的每个“部分”的3位或更少位数,例如4.0.0.0
,但它也会匹配11.2.123.21
等IPv4地址。
编写IPv6地址的格式比IPv4更灵活,虽然可能将它们与Visual Studio 2010正则表达相匹配,但它会非常复杂。 : - )
答案 1 :(得分:0)
对于 Visual Studio 2017 ,此正则表达式对我来说效果很好:((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)