Вот хорошая диаграмма strfriend :
![^(d{1,2}([a-z]+))(?:s*)S (?=200[0-9])](https://i.stack.imgur.com/4ou0K.png)
Но я думаю, что вы, вероятно, имели в виду ^(\d{1,2}([a-z]+))(?:\s*)\S (?=200[0-9])
с обратными слешами, что дает эту диаграмму :
![^(\d{1,2}([a-z]+))(?:\s*)\S (?=200[0-9])](https://i.stack.imgur.com/JLnIs.png)
То есть, это регулярное выражение соответствует началу строки, за которой следуют одна или две цифры, одна или несколько строчных букв, ноль или несколько пробельных символов, один непробельный символ и пробел. Кроме того, все это должно сопровождаться числом между 2000 и 2009 годами, хотя это число на самом деле не совпадает с регулярным выражением & mdash; это всего лишь прогнозное утверждение. Кроме того, первые цифры и буквы вводятся в $matches[1]
, а только буквы в $matches[2]
.
Для получения дополнительной информации о синтаксисе регулярных выражений PHP PCRE см. http://php.net/manual/en/pcre.pattern.php