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

标签 regex perl

我有一个来自原始数据的字符串。我不能保证可能有也可能没有额外的逗号。我想我可以像这样删除它:

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

$value =~ s/,//r;

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

有人可以帮帮我吗?

最佳答案

试试这个

$value =~ s/,\s*$//;

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

关于regex - 如何从 Perl 中的字符串中删除最后一个逗号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52806895/

相关文章:

perl - 意外的逻辑错误

arrays - 数组内数组的插值

xml - 从 perl 哈希创建 XML 文件

windows - 如何在 GUI 中显示 Perl 控制台输出?

Javascript 正则表达式 : match any character that is not in the set of symbols (but only if this symbol doesn't follow a backslash)

mysql - 如何在 mysql 触发器中使用正则表达式查找和替换某些内容

javascript - 替换文本但如果包含特定字符则不替换?

regex - 在 Nginx 中,如何匹配整个 URL 和查询字符串并重定向到 URL 和查询字符串

php - 使用正则表达式替换搜索 MySQL 数据库

regex - 有没有办法让 Perl 正则表达式搜索不区分大小写?