0

我有一个字符串:

“你好,我叫blah blah(再见)(你好)(哎呀)”

如何删除“(你好)”但留下另外两个括号内的单词?

我现在在 PHP 中这样做,但它删除了所有出现的括号以及其中的任何内容。我想定位一个特定的词,然后删除这个词和周围的括号。

$newName= trim(preg_replace('/\s*\([^)]*\)/', '', $name));
4

2 回答 2

8

不要使用正则表达式进行如此简单的操作

$newName = trim(str_replace("(hello)", "", $name));

为了删除更多的值,您甚至不需要多次使用 str_replace,只需将数组传递给第一个参数

$remove = array(
    "(oops)",
    "(hello)"
); 
$newName = trim(str_replace($remove, "", $name));
于 2012-03-27T11:03:23.690 回答
1

你可以尝试这样的事情:

$toDelete = array("(hello)", "(bye)");

$neName = trim(str_replace($toDelete, "", $name));

这将删除文本中的所有 (hello) 和 (bye)。您可以根据需要添加任意数量。

于 2012-03-27T11:06:32.890 回答