regex — удалить все после 1-го открывающего кронштейна, вкл. открывающая скобка — в строке

Я вытаскиваю местоположение из API.

Переменная $ location иногда содержит:

  1. Париж
  2. Нью-Йорк (Манхэттен)

Париж в порядке.

Я хочу только название города. Итак, Нью-Йорк (Манхэттен) должен быть Нью-Йорком.

Как мне удалить все после 1-й скобки (включая 1-ю скобку) в переменной $ location?

И повлияет ли код, влияющий на содержимое $ location, если он содержит только 1 слово (например, Paris)?

Спасибо.

-1

Решение

Вы можете использовать регулярное выражение, как показано ниже, и использовать пустую строку замены:

\(.*

Рабочая демонстрация

$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);

Проверьте панель замены ниже:

введите описание изображения здесь

1

Другие решения

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

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

Как насчет этого?

2

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector