regex - Perl:正则表达式替换

标签 regex perl

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

字符串:用户1:组用户2:组2 用户3:组3

user1:group user2:group2 user3:group3

到目前为止我尝试的是:

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

最佳答案

你快到了:

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

没有必要转义:,你想搜索冒号前后的空格。我没有使用 \s+ 来搜索一个或多个,而是使用 \s* 来搜索零个或多个。这样,如果前面没有空格但后面有一些空格,您将匹配,反之亦然。

关于regex - Perl:正则表达式替换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12627675/

相关文章:

java - 如何从基于斜杠的分区中排除单字符表达式?

ruby - 如何拆分字符串而不在数组中插入空字符串

javascript - JSLint 正则表达式违规问题

perl - File::Find::Rule::LibMagic:保留具有未定义值的选项是否可以?

perl - 仅当有完整行时,如何才能从 IO::Socket::INET 文件句柄中读取?

regex - 监听 bash 命令输出,当匹配字符串时,保存到文件并退出进程

regex - 我想在另一个字符串模式前面找到一些字符串,怎么办?

perl - 如何检索通过 SNMP 接收到的发送字节

perl - 如何使用 Perl 通过 Lotus Notes API 打开收件箱?

perl - pdl2(或Devel::REPL)中是否有等效于perl调试器 'x'的东西?