3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php preg_match_all('/(^[a-z0-9_]+(?=::)|::([a-z0-9_]+))/', 'lol::second::third::fourth', $matches); var_dump($matches);
based on NgLcZ
Output for 4.3.0 - 5.6.28, hhvm-3.10.0 - 3.12.0, 7.0.0 - 7.1.0
array(3) { [0]=> array(4) { [0]=> string(3) "lol" [1]=> string(8) "::second" [2]=> string(7) "::third" [3]=> string(8) "::fourth" } [1]=> array(4) { [0]=> string(3) "lol" [1]=> string(8) "::second" [2]=> string(7) "::third" [3]=> string(8) "::fourth" } [2]=> array(4) { [0]=> string(0) "" [1]=> string(6) "second" [2]=> string(5) "third" [3]=> string(6) "fourth" } }