Regex 如何删除第五斜杠后的所有内容?

Regex 如何删除第五斜杠后的所有内容?,regex,perl,notepad++,Regex,Perl,Notepad++,我需要你的帮助。我有一个包含以下内容的txt文件: http://www.odnoklassniki.ru/group/50577704157376 http://www.odnoklassniki.ru/group/50735464710341 http://www.odnoklassniki.ru/group/51604546650191 http://www.odnoklassniki.ru/group/51760907550833/album/51760907747441 http://

我需要你的帮助。我有一个包含以下内容的txt文件:

http://www.odnoklassniki.ru/group/50577704157376
http://www.odnoklassniki.ru/group/50735464710341
http://www.odnoklassniki.ru/group/51604546650191
http://www.odnoklassniki.ru/group/51760907550833/album/51760907747441
http://www.odnoklassniki.ru/group/51104812826795
http://www.odnoklassniki.ru/group/51512464113845
http://www.odnoklassniki.ru/group/52331994480761
http://www.odnoklassniki.ru/group/56283345518632
http://www.odnoklassniki.ru/group/50763665834200
http://www.odnoklassniki.ru/group/49222266847410
http://www.odnoklassniki.ru/group/44709448384597/album/44709465620565
http://www.odnoklassniki.ru/group/42776675221604
http://www.odnoklassniki.ru/group/50906863239329
我需要在第五次slesh之后删除所有内容。需要用perl或regex到记事本的解决方案++

使用记事本++:

Find what: ([^/]+//[^/]+/[^/]+/[^/]+/).*
Replace with: \1

您可以使用以下Perl正则表达式:s{^?:[^\/]*\/{5}.+}{$1}x

或者,如果您希望更通用:

use URI qw( );

while (<>) {
   chomp;
   my $url = URI->new($_);

   my $path = $url->path;
   $path =~ s{^/[^/]*/[^/]*\K.*}{}s;
   $url->path($path);

   print "$url\n";
}

@user1614240:搜索模式是否设置为正则表达式?我在这里试过,效果很好。另外,请确保您选择了整个文本。@user1614240,您是否使用记事本而不是记事本++?编辑plz以从txt上载字符串我有一个包含此字符串的txt文件,并且我需要在需要的位置获取一个包含替换字符串的新txt,如果第五个斜杠前的数据总是相同的长度,如您的示例所示,您最好使用一个简单的子字符串。
use URI qw( );

while (<>) {
   chomp;
   my $url = URI->new($_);

   my $path = $url->path;
   $path =~ s{^/[^/]*/[^/]*\K.*}{}s;
   $url->path($path);

   print "$url\n";
}
while(<FILE>){
s/([^/]*\/[^/]*\/[^/]*\/[^/]*\/[^/]*\/).*/\1/;
print $_;
}