Perl:正则表达式替换

时间:2012-09-27 18:16:10

标签: regex perl

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

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

user1:group user2:group2 user3:group3

到目前为止我尝试的是:

$argument =~ s/\s+\:/\:/g;

2 个答案:

答案 0 :(得分:5)

你快到了:

$argument =~ s/\s*:\s*/:/g;

无需转义:,并且您希望在冒号之前和之后搜索空格。我使用\s+搜索零或更多,而不是搜索一个或多个的\s*。这样你就会匹配,如果之前没有空格,有些之后,反之亦然。

答案 1 :(得分:1)

编辑(没注意到冒号之前也可能有空格):

$yourString =~ s/\s*:\s*/:/g;

我想。请注意,我不以任何方式说perl。