Найти подстроки в строке, где подстрока заключена в определенный символ

У меня есть строка в формате:

"The quick __grey__ fox jumps over the lazy __brown__ dog."

И я хочу найти и заменить любые слова (или иногда предложения) между двойным подчеркиванием.

В настоящее время я использую preg_match_all в PHP:

$pattern = '/__(.*)__/';

Это работает нормально ... пока не найдет два набора двойных подчеркиваний на одной строке, например, в приведенном выше примере, где он соответствует "__grey__" и "__brown__", как я хочу, но также "__grey__ fox перепрыгивает через ленивый коричневый цвет__" "чего я не хочу ...

Итак, мой вопрос: есть ли способ сопоставления только между первым и вторым экземпляром, третьим и четвертым экземпляром и т. Д.?

Я прошу прощения, если это было задано ранее, но я действительно не уверен, как сформулировать вопрос так кратко, чтобы выполнить полезный поиск!

Заранее спасибо.

Ответы на вопрос(1)

Ваш ответ на вопрос