删除第一个左括号后的所有内容,包括。左括号 - 在字符串中 - PHP

Remove everything after 1st opening bracket incl. the opening bracket - in a string - PHP

我正在从 API 中提取位置。

变量 $location 有时包含:

  1. 巴黎
  2. 纽约(曼哈顿)

巴黎还好。

我只想要城市名称。所以,纽约(曼哈顿)应该是纽约。

如何删除变量 $location 中第一个括号(包括第一个括号)之后的所有内容?

如果 $location 只包含 1 个单词(例如 Paris),那么执行此操作的代码会影响它的内容吗?

谢谢。

您可以使用如下所示的正则表达式并使用空替换字符串:

\(.*

Working demo

$re = "/\(.*/"; 
$str = "Paris New York (Manhattan)\n\nParis is OK. I only want the city name. So, New York (Manhattan) should be New York.\n"; 

$result = preg_replace($re, "", $str);

检查下面的替换面板:

$pos = strpos($location, "(");

if ($pos) $location = substr($location, 0, $pos);

这个呢?