如何从Perl中的字符串中删除最后一个逗号

Dan*_*lan 1 regex perl

我有一个来自原始数据的字符串。我不能保证可能会有或没有多余的逗号。我以为我可以这样删除它:

$value = "cat, dog, fish, ";

$value =~ s/,//r;
Run Code Online (Sandbox Code Playgroud)

可悲的是这不起作用。当然,我可以做一个循环来逐个检查字符串的最后一个字符,但是我想学习如何使用Regex反斜杠方法。

有谁可以帮助我吗?

Bar*_*ers 5

尝试这个

$value =~ s/,\s*$//;
Run Code Online (Sandbox Code Playgroud)

该模式,\s*$匹配一个逗号(,),然后是零个或多个空格字符(\s*),然后是行/输入($)的结尾。