3v4l.org

run code in 300+ PHP versions simultaneously
<?php $str = "manger des pâtes à la carbonara dans un restaurant de pâtes"; $pattern = "/(.*) (son |sa |ses |un |une |des |du |le |les |la )(.*) dans (son |sa |ses |un |une |de la |des |du |la |le |les |l')(.*)\z/"; if (preg_match($pattern, $str, $matches1) && preg_match($pattern.'U', $str, $matches2)) { $result = [$matches1, $matches2]; print_r($result); }
Output for 7.4.0 - 7.4.33, 8.0.1 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.19, 8.3.0 - 8.3.7
Array ( [0] => Array ( [0] => manger des pâtes à la carbonara dans un restaurant de pâtes [1] => manger des pâtes à [2] => la [3] => carbonara [4] => un [5] => restaurant de pâtes ) [1] => Array ( [0] => manger des pâtes à la carbonara dans un restaurant de pâtes [1] => manger [2] => des [3] => pâtes à la carbonara [4] => un [5] => restaurant de pâtes ) )

preferences:
161.74 ms | 403 KiB | 123 Q