从分隔字符串中删除尾随分隔符

2022-08-30 05:46:51

从字符串中删除最后一个字符的最快方法是什么?

我有一个字符串,如

a,b,c,d,e,

我想删除最后一个',并取回剩余的字符串:

OUTPUT: a,b,c,d,e

最快的方法是什么?


答案 1

与所提出的问题相反,将从字符串末尾删除第二个参数中列出的任意数量的字符。如果您只期望只有一个逗号,则以下代码可以:rtrim()

$newarraynama = rtrim($arraynama, ",");

但在我的情况下,我有2个字符,一个逗号和一个空格,所以我不得不改成

$newarraynama = rtrim($arraynama, " ,");

现在,它将从字符串末尾删除所有逗号和空格,从 、 或 返回a, b, c, d, ea, b, c, d, e,a, b, c, d, e,,,a, b, c, d, e, a, b, c, d, e , ,, , ,

但是,如果可能有多个逗号,但您只需要删除最后一个逗号,则根本不应该使用 - 请参阅其他答案以获取直接回答问题的解决方案。rtrim()

但是,如果您不知道是否存在额外的角色,则可能是一个不错的选择。与基于解决方案不同,它将从中返回rtrim()substra, b, c, d, ea, b, c, d, e


答案 2

您可以使用 substr

echo substr('a,b,c,d,e,', 0, -1);
# => 'a,b,c,d,e'

如果最后一个字符可以是多字节,则应改用。mb_substr()


推荐