2017-08-19 34 views
1

我有一个包含这样的话一个大的文本文件中删除所有的IP在一个文本文件:如何使用记事本+ +

12.0.84.130|test|test|United States (US) 
12.0.84.131 
12.0.84.132 

,所以我想从文本文件中删除所有的IP,让他们看起来像这样:

12.0.84.130|test|test|United States (US) 

我该如何在Notepad ++中做到这一点?

+2

我甚至无法理解您要在此处实现的目标 – Mikkel

+0

是否要删除包含单个IP地址而没有其他内容的行? – Toto

+0

@Mikkel&Toto刚刚在这里阅读Mohit的回答和评论,你会明白! –

回答

2

要删除只包含一个IP地址线,这里是我怎么想做:

  • Ctrl + ^h
  • 查找内容:^\d+(?:\.\d+){3}(?:\R|$)
  • 替换:如果你想更精确的匹配

    ^   : begining of line 
    \d+   : 1 or more digits 
    (?:   : start non capture group 
        \.  : a dot 
        \d+  : 1 or more digits 
    ){3}  : end group, repeated 3 times 
    \R|$  : any kind of line break or end of line 
    

    NOTHING

  • 更换所有

说明IIP地址,通过(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)(?:\.(?1)){3}改变\d+其中(?1)是一样的正则表达式的一个组1

  • 按Ctrl + H^
  • 查找内容:NOTHING
  • ^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)(?:\.(?1)){3}(?:\R|$)
  • 与更换
  • 全部替换
+0

嘿@Toto它正常工作正常,但我不能在这里为一些ip示例工作https://i.imgur。com/3UlvKJ6.png –

+1

用'(?:\ R | $)'换行符或换行结尾来代替'\ R'。看我的编辑 – Toto

+0

谢谢你,你是来自印度的天才爱:D –

0

使用正则表达式在记事本++ 更换和 搜索查找内容:(^((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]?)$) 替换:\ 1 |考试|考试|美国(US)

不要忘记在记事本中,检查正则表达式++ :)

+0

任何其他想法取代?因为许多单词包含不同类型的单词,如:1.171.105.77 | user | user |美国(US)& 1.172.77.185 |支持|支持|美国(美国) –