You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHP如何移除括号包裹内容及其右侧所有字符?

移除括号内容及右侧所有字符的解决方案

我明白你现在的需求啦——不仅要删掉字符串里括号包裹的内容,还要把括号右侧的所有字符一并移除,比如输入Hey (Jude) Hello时,期望得到Hey,但你之前的正则只去掉了括号内的部分,所以输出变成了Hey Hello。

其实只需要调整正则表达式,让它匹配从左括号开始到字符串结尾的所有内容,再替换为空就可以了,具体代码如下:

$string = "Hey (Jude) Hello";
echo preg_replace("/\([^)]+\).*/", "", $string);

给你拆解下这个正则的逻辑:

  • \(:转义匹配左括号(因为括号在正则里是特殊语法,必须转义才能匹配字面量)
  • [^)]+:匹配除了右括号之外的任意一个或多个字符,精准定位括号内的内容
  • \):转义匹配右括号
  • .*:匹配右括号之后的所有字符(.*表示任意数量的任意字符,直到字符串结束)

这样整个正则会把(Jude) Hello这部分全部匹配到,替换为空后就得到了你想要的Hey。

内容的提问来源于stack exchange,提问作者jerome

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 10:09:43