Perl:正则表达式替换

iDe*_*Dev 2 regex perl

我想写一个正则表达式来替换我的字符串中的删除空格,如下所示:

字符串:user1: group user2 :group2 user3 : group3

user1:group user2:group2 user3:group3
Run Code Online (Sandbox Code Playgroud)

到目前为止我尝试的是:

$argument =~ s/\s+\:/\:/g;
Run Code Online (Sandbox Code Playgroud)

And*_*ark 5

你快到了:

$argument =~ s/\s*:\s*/:/g;
Run Code Online (Sandbox Code Playgroud)

没有必要转义:,你想在冒号之前和之后搜索空格.而不是\s+搜索一个或多个,我使用\s*哪个搜索零或更多.这样你就会匹配,如果之前没有空格,有些之后,反之亦然.