strnatcasecmp(PHP 4) strnatcasecmp - сравнение строк без учёта регистра с использованием алгоритма "natural order". Описаниеint strnatcasecmp (string str1, string str2) Эта функция реализует алгоритм сравнения, упорядочивающий алфавитно-числовые строки "человеческим" способом. Поведение этой функции похоже на strnatcmp(), но сравнение нечувствительно к регистру. Дополнительно см. страницу Martin'а Pool'а Natural Order String Comparison. Как и другие функции сравнения строк, эта возвращает < 0, если str1 меньше str2; > 0, если str1 больше str2; 0, если они равны. См. также ereg(), strcasecmp(), substr(), stristr(), strcmp(), strncmp(), strncasecmp(), strnatcmp() и strstr(). |
||||||||||
|
||||||||||
Можно заставить субпатэрн в процессе совпадения подчиняться условно или выбирать
из двух альтернативных субпатэрнов, в зависимости от результата утверждения
или от того, совпал предшествующий захватывающий субпатэрн или нет. Вот две
возможные формы условного субпатэрна:
(?(condition)yes-pattern)
(?(condition)yes-pattern|no-pattern)
Если условие выполнено, используется yes-pattern; иначе используется no-pattern
(если имеется). Если в субпатэрне имеются более двух альтернатив, возникает
ошибка компиляции.
Есть условия двух видов. Если текст между скобками состоит из последовательности
цифр, то условие выполнено, если захватывающий субпатэрн этого числа ранее совпал.
Рассмотрим следующий патэрн, который содержит незначащий пробел для удобства
чтения (предположим наличие опции PCRE_EXTENDED) и для разделения патэрна на
три части для облегчения обсуждения:
( \( )?[^()]+(?(1) \) )
| |