В доке
php.net/manual/ru/reference.pcre.pattern.modifiers.php про модификатор S пишут:
В случае, если данный модификатор используется, проводится дополнительный анализ шаблона. В настоящем это имеет смысл только для "незаякоренных" шаблонов, не начинающихся с какого-либо определенного символа.
Вопрос:
Любой шаблон, начинающийся с [a-z] считается незаякоренным? В отличие от 0[a-z]?
Так же непонятно описание модификатора А по этой же причине:
A (PCRE_ANCHORED)
Если используется данный модификатор, соответствие шаблону будет достигаться только в том случае, если он "заякорен", то есть соответствует началу строки, в которой производится поиск.
Есть какой ни будь пример его использования? Начало строки абсолютное? Ведь если использовать m у нас может быть много начал строк... Или А никогда не будет работать на [a-z] потому что здесь в начале нет конкретного символа?