php - 从字符串中删除值

标签 php regex string

如果我有一个带有 ID 的字符串

$myIDs = '22,34,445,67889,23';

我得到了一个值,假设我确定它在字符串中,我该如何从字符串中删除它?

$removeID = '445';

我是使用 preg_replace 还是有更好的方法?例如,如果它在字符串的中间,而我只删除了一个值,我将以两个逗号结束,然后我需要用一个逗号替换它们?

preg_replace($removeID, '', $myIDs);

更新:这些都是很好的建议。然而,我只是想到了一个潜在的问题。这可能需要作为数组而不是正则表达式来处理。我的字符串是什么,看起来像这样

$myIDs = '2312,23,234234';

和要删除的ID

$removeID = '23';

潜在匹配项太多...

最佳答案

$array = explode(',',$myIDs);
$array = array_diff($array,array($removeID));
$output = implode(',',$array);

关于php - 从字符串中删除值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4768386/

相关文章:

php - 使用 IP 地址作为主机的 PDO 连接

php - Laravel Artisan 使用内存挂起直至卡住

regex - 将大写 URL 重定向为小写,除了 *** - htaccess

java - 无法将字符串转换为 JsonArray

javascript - 如何将switch语句中的模板字符串与js匹配?

PHP MySQL - 无法删除脚本的某些部分

java - HTTP Post 请求 Android

regex - 专门处理一个查询参数

regex - 什么是正则表达式来匹配 =,空格分隔后的所有事件?

c - K&R 示例中的函数返回错误的字符串长度?